vue如何動(dòng)態(tài)綁定img的src屬性(v-bind)
動(dòng)態(tài)綁定img的src屬性(v-bind)
今天遇到一個(gè)特別坑爹問題,頁面中使用img動(dòng)態(tài)綁定圖片路徑時(shí)總是不顯示。(處理前的代碼)
<div class="prod-content"> <div class="prod-item" v-for="(item,index) in Merchant" :key="index"> <img :src="item.imgUrl" alt=""> <span>{{item.name}}</span> </div> </div>
Merchant:[ {imgUrl:'../../assets/image/凱叔講故事.png',name:'凱叔講故事'}, {imgUrl:'../../assets/image/樊登讀書.png',name:'樊登讀書'}, {imgUrl:'../../assets/image/QQ音樂.png',name:'QQ音樂'}, {imgUrl:'../../assets/image/滴滴出行.png',name:'滴滴出行 '}, {imgUrl:'../../assets/image/沃爾瑪.png',name:'沃爾瑪'}, {imgUrl:'../../assets/image/星巴克.png',name:'星巴克'}, {imgUrl:'../../assets/image/愛奇藝.png',name:'愛奇藝'}, {imgUrl:'../../assets/image/騰訊視頻.png',name:'騰訊視頻'}, {imgUrl:'../../assets/image/優(yōu)酷.png',name:'優(yōu)酷'}, {imgUrl:'../../assets/image/攜程.png',name:'攜程'}, ],
解決辦法
圖片鏈接是需要通過 require包裹。這樣圖片就可以正常顯示啦。(網(wǎng)絡(luò)請(qǐng)求的數(shù)據(jù)應(yīng)該做相應(yīng)的處理)
*** 圖片的路徑不要出行中文,這里只是做演示
Merchant:[ {imgUrl:require('../../assets/image/凱叔講故事.png'),name:'凱叔講故事'}, {imgUrl:require("../../assets/image/樊登讀書.png"),name:'樊登讀書'}, {imgUrl:require("../../assets/image/QQ音樂.png"),name:'QQ音樂'}, {imgUrl:require("../../assets/image/攜程.png"),name:'攜程'}, {imgUrl:require("../../assets/image/滴滴出行.png"),name:'滴滴出行'}, {imgUrl:require("../../assets/image/沃爾瑪.png"),name:'沃爾瑪'}, {imgUrl:require("../../assets/image/星巴克.png"),name:'星巴克'}, {imgUrl:require("../../assets/image/愛奇藝.png"),name:'愛奇藝'}, {imgUrl:require("../../assets/image/騰訊視頻.png"),name:'騰訊視頻'}, {imgUrl:require("../../assets/image/優(yōu)酷.png"),name:'優(yōu)酷'}, ],
vue添加img的src地址 v-bind
vue獲取數(shù)據(jù)用{{ a }}
但是放在img標(biāo)簽的src里面不被解析
按照上述用法
html部分
?<div id="test2"> ? ? ? ? <img src="{{ url }}" alt=""> ? ? </div>
js部分
?const vm1 = new Vue({ ? ? ? ? ? ? el: '#test2', ? ? ? ? ? ? data: { ? ? ? ? ? ? ? ? url: "a.jpg", ? ? ? ? ? ? } ? ? ? ? })
這樣的話 控制臺(tái)會(huì)報(bào)錯(cuò) img的地址不會(huì)被解析
正確的用法 通過v-bind進(jìn)行綁定
?<div id="test2"> ? ? ? ? <img v-bind:src="url" alt=""> ? ? </div>
這樣在進(jìn)行輸出的時(shí)候,就會(huì)解析url
如果標(biāo)簽內(nèi)有很多屬性的話,v-bind就需要寫很多,看起來就會(huì)顯得非常亂
vue還提供了一個(gè)簡(jiǎn)寫,就是在屬性前面加個(gè) 冒號(hào) ,例如 :src='url' ,同樣可以解決上面的問題
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
vue3生命周期原理與生命周期函數(shù)簡(jiǎn)單應(yīng)用實(shí)例分析
這篇文章主要介紹了vue3生命周期原理與生命周期函數(shù),結(jié)合簡(jiǎn)單實(shí)例形式分析了vue3的生命周期基本原理、以及各個(gè)階段的生命周期鉤子函數(shù)功能、使用技巧與相關(guān)注意事項(xiàng),需要的朋友可以參考下2023-04-04vue2+element-ui使用vue-i18n進(jìn)行國(guó)際化的多語言/國(guó)際化詳細(xì)教程
這篇文章主要給大家介紹了關(guān)于vue2+element-ui使用vue-i18n進(jìn)行國(guó)際化的多語言/國(guó)際化的相關(guān)資料,I18n是Vue.js的國(guó)際化插件,項(xiàng)目里面的中英文等多語言切換會(huì)使用到這個(gè)東西,需要的朋友可以參考下2023-12-12vue清空數(shù)組的幾個(gè)方式(小結(jié))
本文主要介紹了vue清空數(shù)組的幾個(gè)方式,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-12-12