vue 動(dòng)態(tài)設(shè)置img的src地址無(wú)效,npm run build 后找不到文件的解決
動(dòng)態(tài)設(shè)置img的src屬性無(wú)效,而直接寫可以
解決辦法:
imgSrc寫成require('path');
原因:
動(dòng)態(tài)添加src被當(dāng)做靜態(tài)資源處理了,沒(méi)有進(jìn)行編譯
npm run build 后出現(xiàn) xxxxxxx net::ERR_FILE_NOT_FOUND
解決辦法:
進(jìn)入:build文件夾 > 打開(kāi) webpack.prod.conf.js
找到:output 對(duì)象
添加:publicPath:‘./'
具體寫法:
publicPath: process.env.NODE_ENV === 'production' ? './' +config.build.assetsPublicPath : './' + config.dev.assetsPublicPath
補(bǔ)充知識(shí):解決:vue項(xiàng)目npm run build 打包后 :src路徑里面的本地圖片找不到
問(wèn)題描述及錯(cuò)誤代碼:
// 本地運(yùn)行、打包 圖片是ok的 <img src="../../static/images/orderSeeProgress0.png"> // 本地運(yùn)行 圖片是ok的、打包圖片找不到 (因?yàn)閳D片的路徑被解析成了字符串) <img src="/static/images/orderSeeProgress1.png"> // 本地運(yùn)行 圖片是ok的、打包圖片找不到 (因?yàn)閳D片的路徑被解析成了字符串) <img :src="'../../static/images/orderSeeProgress'+index+'.png'">
解決辦法:
(1)如果使用的是靜態(tài)圖片,切路徑地址不會(huì)改變,那就直接使用 src 如下方法:(相對(duì)路徑的)
// 本地運(yùn)行、打包 圖片是ok的
<img src="../../static/images/orderSeeProgress0.png">
(2)如果圖片是根據(jù)數(shù)據(jù)動(dòng)態(tài)變化的,那么就得使用 :src ( 動(dòng)態(tài)改變src的值)
(2-1)首先在配置文件里面給static文件起個(gè)別名:(我起得別名是@@)
build / webpack.base.conf.js 配置別名如下:
resolve: { extensions: ['.js', '.vue', '.json'], alias: { 'vue$': 'vue/dist/vue.esm.js', '@': resolve('src'), '@@': resolve('static'), } },
(2-2)引入圖片地址,然后在data里面定義,在 :src里面使用。
// 這樣使用: 本地、打包后 圖片都是ok的。 <img :src="orderPro1Img" /> <img :src="orderPro2Img" /> <script> import orderPro1 from '@@/images/orderSeeProgress0.png' import orderPro2 from '@@/images/orderSeeProgress1.png' export default { data() { return { msg: '', index:0, orderPro1Img:orderPro1, orderPro2Img:orderPro2 } }, } </script>
以上這篇vue 動(dòng)態(tài)設(shè)置img的src地址無(wú)效,npm run build 后找不到文件的解決就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Vue項(xiàng)目打包壓縮的實(shí)現(xiàn)(讓頁(yè)面更快響應(yīng))
這篇文章主要介紹了Vue項(xiàng)目打包壓縮的實(shí)現(xiàn)(讓頁(yè)面更快響應(yīng)),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-03-03vue項(xiàng)目初始化過(guò)程中錯(cuò)誤總結(jié)
在Vue.js項(xiàng)目初始化和構(gòu)建過(guò)程中,可能會(huì)遇到多種問(wèn)題,首先,npm?install過(guò)程中報(bào)錯(cuò),如提示“No?such?file?or?directory”,建議刪除package-lock.json文件后重新安裝,在build或run時(shí),若出現(xiàn)core-js相關(guān)錯(cuò)誤2024-09-09vue實(shí)現(xiàn)離線地圖+leaflet+高德瓦片的詳細(xì)代碼
這篇文章主要給大家介紹了關(guān)于vue實(shí)現(xiàn)離線地圖+leaflet+高德瓦片的詳細(xì)代碼,Vue Leaflet是一種結(jié)合了Vue框架和Leaflet庫(kù)的前端技術(shù),用于展示和操作天地圖,需要的朋友可以參考下2023-10-10vue2.0+SVG實(shí)現(xiàn)音樂(lè)播放圓形進(jìn)度條組件
這篇文章主要為大家詳細(xì)介紹了Vue2.0+SVG實(shí)現(xiàn)音樂(lè)播放圓形進(jìn)度條組件,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-09-09Vue +WebSocket + WaveSurferJS 實(shí)現(xiàn)H5聊天對(duì)話交互的實(shí)例
這篇文章主要介紹了Vue +WebSocket + WaveSurferJS 實(shí)現(xiàn)H5聊天對(duì)話交互的實(shí)例,幫助大家更好的理解和學(xué)習(xí)vue,感興趣的朋友可以了解下2020-11-11Vue中的百度地圖定位BMap.GeolocationControl的用法
BMap.GeolocationControl?是百度地圖API中的一個(gè)類,用于添加地理定位控件到地圖上,以便用戶可以通過(guò)該控件獲取自己的當(dāng)前位置,本文給大家介紹Vue中的百度地圖定位BMap.GeolocationControl的用法,感興趣的朋友跟隨小編一起看看吧2023-10-10Vue拖動(dòng)截圖功能的簡(jiǎn)單實(shí)現(xiàn)方法
最近項(xiàng)目上要做一個(gè)車牌識(shí)別的功能,就需要做拖動(dòng)截圖功能了,因?yàn)榍岸问莢ue,所以下面這篇文章主要給大家介紹了關(guān)于Vue拖動(dòng)截圖功能的簡(jiǎn)單實(shí)現(xiàn)方法,需要的朋友可以參考下2021-07-07elementui中的el-cascader級(jí)聯(lián)選擇器的實(shí)踐
本文主要介紹了elementui中的el-cascader級(jí)聯(lián)選擇器的實(shí)踐,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-10-10