如何在vue中读取本地Json文件中的图片路径
{
"about":[
{"url":"require('./assets/img/about1.jpg')"},
{"url":"../../assets/img/about2.jpg"},
{"url":"../img/about3.jpg"}
],
}
在组件Addressz中引用的
<el-col :xs="24" :sm="8" :lg="8" :xl="8" class="mt10 mtbox" v-for="ab in about" :key="ab.url">
<div class="max-box">
<div class="tc"><img :src="ab.url"></div>
<p>{{ab.p1}}</p>
<p>{{ab.p2}}</p>
</div>
</el-col>
import data from '../assets/json/data.json'
export default {
name: 'Address',
data(){
return{
about:[]
}
},
mounted(){
this.about = data.about;
}
}
问题是文字显示出来了,图片显示不出来 ,用以上三个路径度显示不出来,是什么问题呢
读不了。
你的json里存的是开发时的
assets
地址,而你的逻辑渲染图片路径的部分属于运行在浏览器端的业务代码,这时assets
对你的业务代码来说不存在,这算两套环境的代码。你可以使用 import 的方式将图片引入,再存在about对象中(是对象不是json文件),或者放入 static,使用绝对路径。