IT评测·应用市场-qidao123.com

标题: 在Vue中,<img> 标签的 src 值 [打印本页]

作者: 缠丝猫    时间: 2025-1-21 05:44
标题: 在Vue中,<img> 标签的 src 值
1. 直接指定 src 的值(适用于网络图片)

假如你利用的是网络图片(即图片的URL是完整的HTTP或HTTPS链接),可以直接指定 src 的值:
vue
复制
  1. <template>
  2.   <div>
  3.     <img src="https://example.com/your-image.jpg" alt="描述图片">
  4.   </div>
  5. </template>
复制代码
这种方式非常简单,适用于图片已经托管在网络上。

2. 直接指定 src 的值(适用于本舆图片)

假如你利用的是本舆图片(即图片存放在项目的 src/assets 或 public 目次中),直接指定 src 的值大概会导致图片无法正确加载。缘故原由如下:

正确的做法:

你需要利用 require 或 import 来引入图片,这样 Webpack 会正确处置惩罚路径。
vue
复制
  1. <template>
  2.   <div>
  3.     <img :src="imageUrl" alt="描述图片">
  4.   </div>
  5. </template>
  6. <script>
  7. export default {
  8.   data() {
  9.     return {
  10.       imageUrl: require('@/assets/your-image.jpg') // 使用 require 引入图片
  11.     };
  12.   }
  13. };
  14. </script>
复制代码
大概利用 import:
vue
复制
  1. <template>
  2.   <div>
  3.     <img :src="imageUrl" alt="描述图片">
  4.   </div>
  5. </template>
  6. <script>
  7. import imageUrl from '@/assets/your-image.jpg'; // 使用 import 引入图片
  8. export default {
  9.   data() {
  10.     return {
  11.       imageUrl
  12.     };
  13.   }
  14. };
  15. </script>
复制代码

3. 将图片放在 public 目次

假如你不想通过 Webpack 处置惩罚图片,可以将图片放在 public 目次中。public 目次中的文件不会被 Webpack 处置惩罚,而是直接复制到打包后的 dist 目次中。

vue
复制
  1. <template>
  2.   <div>
  3.     <img src="/images/your-image.jpg" alt="描述图片">
  4.   </div>
  5. </template>
复制代码
这种方式恰当静态图片,且图片路径不会动态厘革。

4. 动态绑定 src

假如你需要动态绑定图片路径(例如根据用户输入或条件切换图片),可以利用 v-bind(或简写为 :)动态绑定 src:
vue
复制
  1. <template>
  2.   <div>
  3.     <img :src="imageUrl" alt="描述图片">
  4.   </div>
  5. </template>
  6. <script>
  7. export default {
  8.   data() {
  9.     return {
  10.       imageUrl: '' // 初始为空
  11.     };
  12.   },
  13.   mounted() {
  14.     // 动态设置图片路径
  15.     this.imageUrl = require('@/assets/your-image.jpg');
  16.   }
  17. };
  18. </script>
复制代码

总结



免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 IT评测·应用市场-qidao123.com (https://dis.qidao123.com/) Powered by Discuz! X3.4