vue-cli打包上線遇到各文件找不到問題


在做VUE-cli WebPack腳手架項目打包完成后,在服務器上運行發現,有些js中定義的變量找不到,css,背景圖片資源等都找不到,原來發現項目打包后的CSS和JS的引用路徑是絕對路徑,項目部署后會將靜態當成根目錄,就造成了文件引用路徑的錯誤,解決方法是通過修改配置文件,將絕對路徑改為相對路徑,從而達到資源的相對引用。

一。‘/’指的是項目的根目錄 ,’./’指的是當前目錄

1.publicPath 並不會對生成文件的路徑造成影響,主要是對你的頁面里面引入的資源的路徑做對應的補全,常見的就是css文件里面引入的圖片

2.assetsPublicPath屬性作用是指定編譯發布的根目錄

具體操作如下:

1.打開webpack.prod.conf.js;

2.在output模塊中添加  publicPath: './' ,如下圖所示:

 

2.修改打包后背景圖片的引用路徑
資源內的圖片是通過css加載的,CSS代碼如:background:url(../ assets / img-bg / buttonbg.png)no-repeat;

但是打包過后的CSS變成了背景:url(../../ static / img / buttonbg.68979b3.png)no-repeat;我們需要修改配置文件,是的CSS代碼打包后,資源引用路徑還是相對路徑;

解決辦法:

1.打開build文件夾下的utils.js ;

2.在下圖位置添加  publicPath:” ../../

 

 

 

第二個問題:router-view中的內容顯示不出來。路由history模式。

這個坑是當你使用了路由之后,在沒有后端配合的情況下就手賤打開路由history模式的時候,打包出來的文件也會是一片空白的情況,

很多人踩這個坑的時候花了很多時間,網上的教程基本上都是說的第一個坑,這個坑很少有人提起。

解決:// mode: 'history',//將這個模式關閉就好

參考:https://blog.csdn.net/qq_41725450/article/details/83104956 https://www.cnblogs.com/chenzeyongjsj/p/8079136.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM