Can't load font-awesome with Webpack [duplicate]

安稳与你 提交于 2019-12-04 09:19:21
mchavezi

To properly load font-awesome fonts, you need to configure loaders in your webpack.config.js to use url-loader and file-loader. Example:

module.exports = {
  module: {
    loaders: [
      // the url-loader uses DataUrls. 
      // the file-loader emits files. 
      { 
        test: /\.woff(2)?(\?v=[0-9]\.[0-9]\.[0-9])?$/, 
        loader: "url-loader?limit=10000&mimetype=application/font-woff" 
      },
      { 
        test: /\.(ttf|eot|svg)(\?v=[0-9]\.[0-9]\.[0-9])?$/, 
        loader: "file-loader" 
      },
    ]
  }
};

to do this, you'll need to npm install font-awesome-sass-loader npm i font-awesome-sass-loader You'll also need url-loader npm i url-loader and file-loader npm i file-loader

This worked for me after trying many examples:

  { test: /\.woff(2)?(\?v=[0-9]\.[0-9]\.[0-9])?$/, loader: "url-loader" },
  { test: /\.(ttf|eot|svg)(\?v=[0-9]\.[0-9]\.[0-9])?$/, loader: "url-loader" },

and for sure fontawsome need to be imported in your main file

  import 'font-awesome/css/font-awesome.css';

also don't forget to install the loader

  npm install url-loader --save-dev

Try loading your .eot files with the file-loader instead of url-loader.

Example:

module: {
    loaders: [
        {
            test: /\.(eot|ttf|woff2?|otf|svg|png|jpg)$/,
            loaders: ['file']
        }
    ]
}
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!