Отличный шрифт javascript не рендерится при срабатывании рендеринга React. Если у вас все в порядке, если вы не используете новые font-awesome svg / javascript icons, вы можете использовать font-awesome в качестве веб-шрифта с css.
В вашем index.html удалите скрипт fontawesome и добавьте таблицу стилей font-awesome css:
<link href="https://use.fontawesome.com/releases/v5.0.2/css/all.css" rel="stylesheet">
Ваш код должен работать.
Другая возможность - использовать официальный пакет font-awesome реагировать
Добавить необходимые пакеты в проект:
yarn add @fortawesome/fontawesome @fortawesome/react-fontawesome
yarn add @fortawesome/fontawesome-free-regular @fortawesome/fontawesome-free-solid
Пример кода:
import fontawesome from '@fortawesome/fontawesome'
import FontAwesomeIcon from '@fortawesome/react-fontawesome'
import { faCircle as fasCircle } from '@fortawesome/fontawesome-free-solid'
import { faCircle as farCircle } from '@fortawesome/fontawesome-free-regular'
const Circle = ({ filled, onClick }) => {
return (
<div onClick={onClick} >
<FontAwesomeIcon icon={filled ? farCircle : fasCircle}/>
</div>
);
};
class App extends React.Component {
state = { filled: false };
handleClick = () => {
this.setState({ filled: !this.state.filled });
};
render() {
return <Circle filled={this.state.filled} onClick={this.handleClick} />;
}
}
См. Репозиторий github для получения дополнительной информации: https://github.com/FortAwesome/react-fontawesome