Vue-cli3下打包資源相對路徑踩坑

錦衣無涯發表於2019-02-15

一般來說webpack的配置是js、css等資源都是以絕對路徑的形式引用的參考下圖中的assetsPublicPath,其路徑預設設定為/

Vue-cli3下打包資源相對路徑踩坑

現在我的需求是,希望所有資源都以相對路徑的形式引入

有兩種方式

1、在config資料夾下找到index.js,對assetsPublicPath重新修改路徑為./,如下圖所示

Vue-cli3下打包資源相對路徑踩坑

2、在build資料夾下找到webpack.prod.conf.js,找到output,新增publicPath:'./'即可,如下圖所示

Vue-cli3下打包資源相對路徑踩坑

通過以上的設定,雖然已經大部分資源引用的路徑已經修改為相對路徑,但實際上css引用的資源路徑還存在問題

因為在webpack中css檔案是使用extract-text-webpack-plugin單獨進行打包處理

所以需要在build資料夾下找到utils.js,新增publicPath:'../../',如下圖所示

Vue-cli3下打包資源相對路徑踩坑

現在就可以npm run build進行打包了

相關文章