【发布时间】:2019-01-27 11:24:07
【问题描述】:
这是我的代码,它尽可能具有魅力:
<li class="icon-list">
<img src="../assets/apple.svg" alt="apple" class="icons">
</li>
<li class="icon-list">
<img src="../assets/google.svg" alt="google" class="icons">
</li>
我想用动态循环来做上面的事情。所以我使用了 v-for 和 :src 和 :alt。
<li v-for="icon in icons" class="icon-list">
<img class="icons" :src="'../assets/' + icon.src" :alt="icon.alt">
</li>
export default {
name: "Home",
data() {
return {
icons: [
{
src: "google.svg",
alt: "google"
},
{
src: "apple.svg",
alt: "apple"
}
]
};
}
};
但是它不加载任何图像。有什么建议吗?
【问题讨论】:
-
你试过
:src="require('../assets/' + icon.src)"吗? -
@BoussadjraBrahim 是的,但仍然无法加载,在 :src="require('../assets/' + icon.src)" 之后,我将有一个这样的图像 URL:@ 987654321@。一切似乎都很好,但它不起作用
-
有一些错误?
-
一点也不,这取决于我的本地主机还是什么?当我使用静态
- 我有一个这样的 URL:data:image/svg+xml;base64,PHN2ZyB4 而不是 localhost:8080/assets/google.svg
-
我认为使用
srcwebpack 将图像解析为 base64 而不是 url,而使用:src他没有,因为它被 vue 解析为 URL,你有一个静态的根路径/assets/中的公共文件夹,其中包含图像?而且没有错误的事实很奇怪,您应该看到图像或收到图像路径返回404代码的错误。
标签: javascript vue.js