fortawesome / react-fontawesome软件包更改图标onclick

问题描述

我的代码中带有以下图标:

<FontAwesomeIcon id="star" onClick={this.handleClick} icon={hollowstar} size="lg" />

我需要将图标从Hollowstar更改为solidstar onclick。如何做到这一点?

解决方法

您可以执行以下操作:

import { faStar as fasFaStar } from '@fortawesome/free-solid-svg-icons';
import { faStar as farFaStar } from '@fortawesome/free-regular-svg-icons';

// ...

const [star,setStar] = useState(farFaStar);

// ...

<FontAwesomeIcon
  onClick={() => {
    setStar(fasFaStar);
  }}
  icon={star}
  // Other props...
/>

因此,在代码中,我们导入了具有不同样式的相同星形图标,如此处的文档所述:https://github.com/FortAwesome/react-fontawesome#how-do-i-import-the-same-icon-from-two-different-styles

由于图标只是一个对象,您可以将其保存为状态并将状态更新为onClick函数中的其他图标。

为清楚起见,我在这里使用了功能组件。

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...