Я установил Font Awesome, но я все еще не могу использовать его с Boostrap в моем проекте ReactJs.
Я предпринял следующие шаги для его установки:
npm install --save font-awesome
И затем я импортировал его в свой файл index.js, например:
import 'font-awesome/css/font-awesome.min.css';
Webpack.config.js выглядит так:
module: {
rules: [
{
test: /\.js?/,
include: SRC_DIR,
loader: "babel-loader",
query: {
presets: ["react", "es2015", "stage-2"]
}
},
{
test: /\.svg$/,
use: [
"babel-loader",
{
loader: "react-svg-loader",
options: {
svgo: {
plugins: [
{ removeTitle: false }
],
floatPrecision: 2
}
}
}
]
},
{
test: /\.(scss|sass)$/,
loaders: ['style-loader', 'css-loader', 'sass-loader']
},
{
test: /\.css$/,
loader: 'style-loader!css-loader'
},
{
test: /\.(png|jpg|gif|woff|woff2|eot|ttf|svg)$/,
loader: "url-loader",
query: { mimetype: "image/png" }
},
{
test: /\.html$/,
loader: 'html-loader?attrs[]=video:src'
}, {
test: /\.mp4$/,
loader: 'url-loader?limit=10000&mimetype=video/mp4'
}
]
}
Package.json
"dependencies": {
"font-awesome": "^4.7.0"
...}
Когда я пытаюсь использовать его таким образом
<i className="fas fa-user"></i>
, это невозможно, потому что когда я запускаю npm start
Я получаю следующую ошибку на своем терминале:
ERROR in ./node_modules/font-awesome/fonts/fontawesome-webfont.svg?v=4.7.0
Module build failed:
@ ./node_modules/css-loader!./node_modules/font-awesome/css/font-awesome.min.css 7:707-758
@ ./node_modules/font-awesome/css/font-awesome.min.css
@ ./src/app/index.js
@ multi (webpack)-dev-server/client?http://localhost:3000 webpack/hot/dev-server ./src/app/index.js
Я прочитал некоторые решения онлайн и попробовал одно с установкой Font Awesome, например:
npm install --save @fortawesome/fontawesome-svg-core
npm install --save @fortawesome/free-solid-svg-icons
npm install --save @fortawesome/react-fontawesome
Импорт:
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
import { faThumbsUp } from '@fortawesome/free-solid-svg-icons';
Использование:
<FontAwesomeIcon icon={ faThumbsUp }/>
Это работает, но как мне заставить его работать так, как оно обычно работает, используя Boostrap с этой строкой кода:
<i className="fas fa-user"></i>