1、問題描述
在項(xiàng)目開發(fā)中,當(dāng)我們通過npm run build打包之后將文件放在服務(wù)器上時(shí)通常會(huì)出現(xiàn)圖片失效問題,控制臺(tái)中提示某個(gè)圖片沒有找到(404錯(cuò)誤),這些圖片可以是以src引入的圖片, 也可以是css中定義的背景圖片。圖片能否顯示與你的靜態(tài)資源文件存在位置和引入的路徑直接相關(guān),下面是我的其中一個(gè)項(xiàng)目的文件存放以及路徑書寫方式!
2、解決方法之一
靜態(tài)資源static存放位置放在src目錄下
你可能會(huì)問為什么放在src目錄下?放在跟src同級(jí)目錄下不可以嗎?好吧,一開始我也是放在src同級(jí)目錄下,但是在某個(gè)css文件中引入背景圖片的時(shí)候打包之后圖片失效,我是這樣引入的
實(shí)踐證明這個(gè)寫法是錯(cuò)誤的,這個(gè)會(huì)在你打包的時(shí)候直接抱一大堆錯(cuò)(如css-loader錯(cuò)誤),連項(xiàng)目都跑不起來。
于是我用下面的寫法:
這種寫法也是不可以的,原因是你的靜態(tài)資源文件static不在src目錄,而在vue中src目錄是相對(duì)根目錄是src目錄,所以如果你想用上面的寫法,必須要把static放在src目錄下。如上面圖一圖二
注意:不能把static/images/user.png寫成 /static/images/user.png,否則圖片還是失效。
以上是關(guān)于文件存放位置以及css中引入圖片問題,如果是通過img標(biāo)簽引入圖片的話,相對(duì)簡單,直接寫絕對(duì)地址就行了,并且靜態(tài)資源static文件夾的位置可以在src里面,也可以放在與src同級(jí)下,但是為了不出現(xiàn)上面情況,放在src里面即可!
img引入圖片:
以上是一種解決圖片失效問題的方法,當(dāng)然,如果非要把static靜態(tài)資源目錄放在與src同級(jí)目錄下,也是有解決方法,例如通過導(dǎo)入圖片的方式(本人未實(shí)踐),可以自行嘗試!
這篇解決vue打包之后靜態(tài)資源圖片失效的問題就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
聲明:本網(wǎng)頁內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com