vue-cli+webpack項目打包到服務(wù)器后,ttf字體找不到的解決操作
更改 build/utils.js 文件中 ExtractTextPlugin 插件的options 配置:
if (options.extract) { return ExtractTextPlugin.extract({ use: loaders, publicPath: '../../', // 注意配置這一部分,根據(jù)目錄結(jié)構(gòu)自由調(diào)整 fallback: 'vue-style-loader' }) } else { return ['vue-style-loader'].concat(loaders) }
補充知識:webpack打包運行vue項目后找不到.ttf及.woff文件,或者路徑報錯
webpack.base.config 文件中 ,有的人可能在utils.js中
修改前:
{ test: /\.css$/, use: ExtractTextPlugin.extract({ use: [‘css-loader?minimize‘, ‘a(chǎn)utoprefixer-loader‘], fallback: ‘style-loader‘ }) }, { test: /\.less$/, use: ExtractTextPlugin.extract({ use: [‘css-loader?minimize‘,‘a(chǎn)utoprefixer-loader‘, ‘less-loader‘], fallback: ‘style-loader‘ }), },
修改后:
{ test: /\.css$/, use: ExtractTextPlugin.extract({ use: [‘css-loader?minimize‘, ‘a(chǎn)utoprefixer-loader‘], publicPath:‘../../‘, fallback: ‘style-loader‘ }) }, { test: /\.less$/, use: ExtractTextPlugin.extract({ use: [‘css-loader?minimize‘,‘a(chǎn)utoprefixer-loader‘, ‘less-loader‘], publicPath:‘../../‘, fallback: ‘style-loader‘ }), }, { test: /\.(woff2?|eot|ttf|otf)(\?.*)?$/, loader: 'url-loader', options: { limit: 10000, name: utils.assetsPath('fonts/[name].[hash:7].[ext]') } }
針對ttf/woff結(jié)尾的文件使用url-loader加載的,要尋找到加載樣式的loader改變打包路徑。
就是再加載css的時候,將publicPath路徑更改為“../../”,也根據(jù)自己的目錄結(jié)構(gòu)自定義。這樣打包后的項目才能找到相對應(yīng)的應(yīng)用路徑,為什么要這樣改呢,是因為我們的路徑要按照打包后的層級結(jié)構(gòu)去找,不是按原本項目本身,還有一點相對路徑有時候找不到,所以才要改成這種絕對路徑,在static下再去尋找次。
以上這篇vue-cli+webpack項目打包到服務(wù)器后,ttf字體找不到的解決操作就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
vue.js實現(xiàn)點擊后動態(tài)添加class及刪除同級class的實現(xiàn)代碼
這篇文章主要介紹了vue.js實現(xiàn)點擊后動態(tài)添加class及刪除同級class的相關(guān)資料,需要的朋友可以參考下2018-04-04