Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/469.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 单击reactjs更改字体图标_Javascript_Reactjs_React Hooks_Font Awesome - Fatal编程技术网

Javascript 单击reactjs更改字体图标

Javascript 单击reactjs更改字体图标,javascript,reactjs,react-hooks,font-awesome,Javascript,Reactjs,React Hooks,Font Awesome,我正在用React创建导航栏。我使用burger菜单,我想将bar菜单更改为times on click当前我有以下内容: const {icons, setIcon} = useState('faBars'); ... <FontAwesomeIcon icon={icons} onClick={() => {setIcon({faTimes})}} /> <FontAwesomeIcon icon={icons} onClick={()

我正在用React创建导航栏。我使用burger菜单,我想将bar菜单更改为times on click当前我有以下内容:

const {icons, setIcon} = useState('faBars');
...
<FontAwesomeIcon 
   icon={icons}
   onClick={() => {setIcon({faTimes})}}
/>
<FontAwesomeIcon 
   icon={icons}
   onClick={() => {setIcon('faTimes')}}
/>
const{icons,setIcon}=useState('fabar');
...
{setIcon({faTimes}}}
/>

但很明显,它不起作用。我想知道如何更正代码。

尝试将新值作为
字符串传递,如下所示:

const {icons, setIcon} = useState('faBars');
...
<FontAwesomeIcon 
   icon={icons}
   onClick={() => {setIcon({faTimes})}}
/>
<FontAwesomeIcon 
   icon={icons}
   onClick={() => {setIcon('faTimes')}}
/>
{setIcon('faTimes')}
/>

主要问题可能是您试图作为对象传递-
setIcon({faTimes})
-而不是基于
useState

中初始值的字符串,应该是这样的:
const[icons,setIcon]=useState('fabar');设置图标('faTimes')