您好,登錄后才能下訂單哦!
最近遇到了個問題,用v-bind動態綁定img的src,圖片加載不出來。控制臺顯示src是有獲取到圖片地址的,可是就是加載不出來。
最后才發現原因原來是瀏覽器中直接顯示'./img/img1.png',也就是沒有經過編譯的步驟,直接將獲取到的數據當作字符串顯示。
解決方法:
1.在當前界面全局import圖片地址
//使用import引入 import img1 from './img/img1.png' import img2 from './img/img2.png' export default { data() { return { imgList[ { id: 0, imgUrl: img1 }, { id: 1, imgUrl: img2 } ] } } }
在Html中使用
<img v-for="item in imgList" :key="item.id" :src="imgUrl" />
2.使用require
用第一種方法可能會很繁瑣,數據多的時候就不好一個一個import了,此時用require動態加載
getImage() { this.imgList.forEach(item => { item.imgUrl = require('./img/' + item.name + '.png') }) }
data里的數據(此方法就不用再import啦)
data() { return { imgList[ { id: 0, name: 'img1', imgUrl: '' }, { id: 1, name: 'img2', imgUrl: '' } ] } }
以上方法就可以解決圖片動態綁定后不能顯示的問題啦,視頻同理喲!
總結
以上所述是小編給大家介紹的解決Vue動態加載本地圖片問題,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對億速云網站的支持!
如果你覺得本文對你有幫助,歡迎轉載,煩請注明出處,謝謝!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。