【发布时间】:2020-12-27 04:23:10
【问题描述】:
我喜欢使用useState通过点击图标来改变图标的颜色,我在图标上添加了一个点击处理程序。
这是我的代码:
import React, { useState } from 'react';
import './App.css';
import ThumbUpIcon from '@material-ui/icons/ThumbUp';
function App() {
const[likeColor, setLikeColor] = useState('');
const colorStyle = {color:"blue"}
const handleClick = () => {
const color = likeColor ? '' : colorStyle;
setLikeColor(color);
}
return (
<div className="App">
<ThumbUpIcon onClick={handleClick} style={{likeColor}}></ThumbUpIcon>
</div>
);
}
export default App;
【问题讨论】:
-
问题是您将字符串传递给样式,但样式需要一个对象
style={{likeColor}}。尝试在那里对颜色值进行硬编码以确保它有效。你可能想要style={{color: likeColor}}
标签: javascript reactjs material-ui react-hooks use-state