首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Vue img src路径与:src不同。

Vue img src路径与:src不同。
EN

Stack Overflow用户
提问于 2020-10-29 19:23:27
回答 3查看 2.2K关注 0票数 3

我用Vue。我试着输出一个图像,当我使用src时,它工作得很好,但当我使用:src时,它就不能工作了。

作品

代码语言:javascript
复制
<img src="../assets/image.png" />

不工作

代码语言:javascript
复制
<img :src="`../assets/${image}.png`" />

我试过的,但没有用

  • @第一次在path.
  • ~中第一次在path.
  • ./第一次在path.
  • /第一次在path.
  • require,但它抛出一个错误如果图像不能加载。我更喜欢本地损坏的图像图标,它不会破坏脚本。

我的输出

变量image包含文件名,在本例中为image

这两个版本的输出如下所示:

代码语言:javascript
复制
<img src="../assets/image.png" data-v-469af010=""> <!-- src -->
<img src="/img/image.f556f8c5.png" data-v-469af010=""> <!-- :src -->

由于某种原因,他们差别很大。

我该怎么解决呢?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2020-10-29 21:20:49

我用这个解决了这个问题:

代码语言:javascript
复制
<img :src="cover(url)" /> // I call a method cover.

// Method cover
cover(url) {
    if (url !== ''){ // You can check any matching expression.
         try {
             url = require('@/assets/img/' + url)
         } catch (e) {
             url = require('@/assets/img/default.jpg'); // I used a default image. 
         }
     }
     else
         url = require('@/assets/img/default.jpg'); // Default image. 
     return url;
}
票数 1
EN

Stack Overflow用户

发布于 2020-10-29 19:43:52

将src绑定到该方法。

代码语言:javascript
复制
getImgUrl(image) {
    return `../assets/${image}.png`
  }

在HTML中

代码语言:javascript
复制
<img :src="getImgUrl(image)" />
票数 0
EN

Stack Overflow用户

发布于 2020-10-29 19:56:36

如果图像变量是文件名

代码语言:javascript
复制
<img :src="'../assets/'+image" />

您不应该在模板中使用$。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64597907

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档