解決vue項(xiàng)目 build之后資源文件找不到的問(wèn)題
解決靜態(tài)資源失效的問(wèn)題
這就需要修改我們的 config 中的 index.js了,默認(rèn)的build 中的部分是這樣的:
build: { // Template for index.html index: path.resolve(__dirname, ’../dist/index.html’), // Paths assetsRoot: path.resolve(__dirname, ’../dist’), assetsSubDirectory: ’static’, assetsPublicPath: ’/’,
修改之后的應(yīng)為這樣的:
build: { // Template for index.html index: path.resolve(__dirname, ’../dist/index.html’), // Paths assetsRoot: path.resolve(__dirname, ’../dist’), assetsSubDirectory: ’static’, assetsPublicPath: ’./’,
但是這樣能確保資源文件可被正常找到, 但頁(yè)面還是處于白屏狀態(tài),
在路由頁(yè)面找到mode: ’history’,
export default new Router({ mode: ’history’, routes: [
將mode: ’history’,這句話刪除,在進(jìn)行build,
export default new Router({ // mode: ’history’, routes: [
小伙伴們, 是不是發(fā)現(xiàn)好用啦~
補(bǔ)充知識(shí):vue關(guān)于build和config文件都已修改,但打包后圖片仍找不到的問(wèn)題
最開始發(fā)現(xiàn)有的圖片可以加載出來(lái)有的卻不能,然后去看build和config文件的配置,
都很ok啊。
然后去看那些可以加載出來(lái)的跟不能加載的做了對(duì)比,發(fā)現(xiàn)不能加載出來(lái)的都是把路徑寫在js里面,用變量的方式寫進(jìn)html里面的,最后的解決方式就是:
//以require形式導(dǎo)入圖片
url:require(’../../static/xxx.png’)
然后打包就沒問(wèn)題了;
后面再補(bǔ)充一下,background屬性引入圖片的話如果以行內(nèi)元素引入也會(huì)造成圖片路徑找不到的情況,解決的辦法就是把它寫在style里面,以類名的方式引入;
總結(jié)一下,vue里面引用圖片在打包后仍能正常使用的正確引用方式:
html內(nèi):img src以相對(duì)路徑引入;
css:style以background屬性作為背景圖片引入,需以類名方式引入,行內(nèi)樣式可能會(huì)不生效;
js:以require(’…/url’)引入,賦予變量;
以上這篇解決vue項(xiàng)目 build之后資源文件找不到的問(wèn)題就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. asp(vbs)Rs.Open和Conn.Execute的詳解和區(qū)別及&H0001的說(shuō)明2. PHP設(shè)計(jì)模式中工廠模式深入詳解3. 解決AJAX返回狀態(tài)200沒有調(diào)用success的問(wèn)題4. Ajax實(shí)現(xiàn)表格中信息不刷新頁(yè)面進(jìn)行更新數(shù)據(jù)5. ThinkPHP5實(shí)現(xiàn)JWT Token認(rèn)證的過(guò)程(親測(cè)可用)6. .NET中l(wèi)ambda表達(dá)式合并問(wèn)題及解決方法7. ASP 信息提示函數(shù)并作返回或者轉(zhuǎn)向8. JSP數(shù)據(jù)交互實(shí)現(xiàn)過(guò)程解析9. 利用promise及參數(shù)解構(gòu)封裝ajax請(qǐng)求的方法10. CSS hack用法案例詳解
