vue打包字体文件路径错误的问题
文章栏目146514650
发布时间:2019-12-04 11:17:12

概述

在我的项目中遇到的情形是:

打包后,css里加载的font文件路径变成了:/static/css/static/fonts/iconfont.eot,原先的打包没有这样的问题,而期望的应该是/static/fonts/iconfont.eot

修改方式:在build/utils.js37行左右的ExtractTextPlugin.extract里加上 publicPath: '…/…/'

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)
    }
  }

打包以后不会出现字体路径错误的问题了!