vue.js - 如何在Vue中本地添加图像?
问题描述
我想在我的项目中添加一张照片,但由于某种原因它不想在本地添加
有人可以帮我怎么做吗?
模板:
<li v-for="book in books" :key="book.id">
*Some code here*
<img :src="book.image"/> <<<-----Here
</li>
脚本:
export default {
data() {
return{
books: [
image: "../assets/images/a-Dolls-house.jpg"
]
}
}
}
解决方案
更改<img :src="book.image"/>
为<img :src="require(book.image)"/>
这将起作用,因为资产文件夹对浏览器不公开。这意味着当您尝试从assets
文件夹调用时,它找不到指定的路径,因为网络服务器找不到该assets
文件夹。然而,通过调用require
我们从文件夹中加载图像assets
,并将其转换为 base 64 编码图像。当它被编译到你的块中时,浏览器可以看到它。
您拥有的另一个选择是将images
文件夹移动到public
目录并将图像属性更改为image: "/images/a-Dolls-house.jpg"
. 然后图像将是公开的,可以从浏览器访问。不会增加块大小或增加内存开销,因为图像将被链接而不是编译。
推荐阅读
- java - vert.x - 可能有多少个 Timer
- php - Preg 匹配仅验证带符号 + 或 - 的整数或小数
- python - 将 tf.nn.embedding_lookup 与多列一起使用
- python - 无法使用 scrapy 从雅虎财经网站获取当前股价
- java - Java 中的 TeamSpeak 3 MusicBot
- php - 如何正确处理数组?
- moq - 使用 Autofac 和 Moq 在服务库中模拟代理工厂
- c# - MsBuild PostBuild 目标
- android - 如何删除向上导航箭头和工具栏标题之间的填充?
- c# - 使用服务帐户的 Gmail API 集转发