vue 專案打包時樣式及背景圖片路徑找不到
阿新 • • 發佈:2018-12-30
問題描述:vue專案打包後,檔案找得到,但是引用的字型及背景圖片找不到;
解決方法:
主要是需要單獨為 css 配置 publicPath 。
ExtractTextWebpackPlugin 提供了一個 options.publicPath 的 api,可以為css單獨配置 publicPath 。
對於用 vue-cli 生成的專案,dist 目錄結構如下:
dist
├── index.html
└── static
├── css
├── img
└── js
經常遇見的問題是 css 中 background-image 的相對路徑不能正確的引用到 img 資料夾中。但是用 ExtractTextWebpackPlugin 的 publicPath 配置就可以。
更改 build/utils.js 檔案中 ExtractTextPlugin 外掛的options 配置:
if (options.extract) {
return ExtractTextPlugin.extract({
use: loaders,
publicPath: '../../', // 注意配置這一部分,根據目錄結構自由調整
fallback: 'vue-style-loader'
})
} else {
return ['vue-style-loader'].concat(loaders)
}
詳情參考:http://blog.csdn.net/lx583274568/article/details/50898366