elementUI中icon图标webpack打包后不显示解决方案

webpack打包之后不显示icon。解决方案如下:

有两种。

第一种方案:

1): 在build文件中找到utils.js。在utils.js里面找到如下代码

if (options.extract) {
    return ExtractTextPlugin.extract(
    {
        use: loaders,
        fallback: 'vue-style-loader'
    }
)

2): 在fallback下面加入

publicPath: '../../' 即可解决。如下

if (options.extract) {
  return ExtractTextPlugin.extract({
    use: loaders,
    fallback: 'vue-style-loader',
    // 加入下面的代码
    publicPath: '../../'
 })

第二种方案:

如果第一种方案无法解决,或者第一种方案utils.js里面没有publicPath。可以用下面的方式解决

在build/webpack.base.conf.js中

module:{
  rules: [ 
    ...(config.dev.useEslint ? [createLintingRule()] : []),
    
    {
      test: /\.(woff2?|eot|ttf|otf)(\?.*)?$/,
      loader: 'url-loader',
      options: {
        limit: 10000,
               // 以下是我需要解决路径问题的代码, 只需要加入publicPath: '../../
        publicPath: '../../',
        name: utils.assetsPath('fonts/[name].[hash:7].[ext]')
      }
    }
  ]  
}

造成上述错误的原因是: 因为打包后woff、eot、ttf、otf的路径找不到才导致404,所以将这几个的publicPath设为'../../'再打包就可以了。

你可能感兴趣的:(webpack,vue.js,webpack)