vue在data中引入图片的正确路径
每天都踩坑,今天踩的坑给分享出来。想要在横版遍历图片出来在vue中自己做轮播,结果发现在data中直接引入路径是渲染不出来的,原因是webpack打包无法解析,查了些资料才知道在通过import引入路径才行。如果直接在模板上通过src="../../assets/images/top5.png"是没有问题的想通过data里的引入路径 ,再:src绑定就不能直接把"../../assets/imag
·
今天踩的坑给分享出来。
本来想要在横版遍历图片出来在vue中自己做轮播,结果发现在data中直接引入路径是渲染不出来的。
原因是webpack打包无法解析
一.通过import引入路径才行。
- 如果直接在模板上通过src="../../assets/images/top5.png"是没有问题的
- 想通过data里的引入路径 ,再:src绑定就不能直接把"../../assets/images/top5.png"放到data中,否则webpack打包无法解析
- 需要通过import引入再放到data中
如下才能渲染出来
<template>
<div class="big-top" >
<img alt="" v-for="(item,index) in gotop" :key="index" :src="item" >
</div>
<//template>
<script>
import top5 from "../../assets/images/top5.png"
import top4 from "../../assets/images/top4.png"
import top3 from "../../assets/images/top3.png"
import top2 from "../../assets/images/top2.png"
import top1 from "../../assets/images/top1.png"
export default {
name: 'Animations',
data() {
return {
gotop:[
top5 ,
top4 ,
top3 ,
top2 ,
top1 ,
]
}
</scriopt>
二.通过require更方便
在data中定义a的值为1就可以动态改变要切换的图片
require(`../works/assets/${this.a}.png`);
三.在ui上直接动态也要通过require
<li v-for="(i,a) in imgs" :key="a"> <a><img :src="require('../../assets/'+i+'.png')" alt=""></a></li>
更多推荐
已为社区贡献1条内容
所有评论(0)