vue打包字体文件路径错误的问题

转载自 https://www.jianshu.com/p/458fe9cb3490

根本原理请看:https://github.com/vuejs-templates/webpack/issues/166
在我的项目中遇到的情形是:
打包后,css里加载的font文件路径变成了:/static/css/static/fonts/element-icons.535877f.woff,
而期望的应该是/static/fonts/element-icons.535877f.woff。
修改方式:在build/utils的ExtractTextPlugin.extract里加上 publicPath: ‘…/…/’:

// generate loader string to be used with extract text plugin
  function generateLoaders (loader, loaderOptions) {
    const loaders = [cssLoader]
    if (loader) {
      loaders.push({
        loader: loader + '-loader',
        options: Object.assign({}, loaderOptions, {
          sourceMap: options.sourceMap
        })
      })
    }
 
    // Extract CSS when that option is specified
    // (which is the case during production build)
    if (options.extract) {
      return ExtractTextPlugin.extract({
        use: loaders,
        fallback: 'vue-style-loader',
        publicPath: '../../'  //加我叫我加我加我加我
      })
    } else {
      return ['vue-style-loader'].concat(loaders)
    }
  }

 

Guess you like

Origin blog.csdn.net/yangdl6/article/details/109179977