我正在做一个项目,在该项目中,我映射了从 1 到 90 的数字列表,并为每个数字返回了一个按钮,因此当我单击特定按钮时,颜色会发生变化,而当我再次单击时,颜色会消失。所以这是我的问题,我需要在单击按钮时将该按钮中的数字添加到列表中,并且颜色发生变化,然后在再次单击按钮并且颜色恢复正常时将其从列表中删除。这是我在单击时为按钮添加颜色并在再次单击时删除颜色所做的代码库。
import React from 'react';
import './style.css';
export default function App() {
const [activeNums, setActiveNums] = React.useState({});
let nums = []
for (let i = 1; i < 91; i++) {
nums.push(i)
}
const onToggle = (num) => {
setActiveNums((state) => {
return {
...state,
[num]: !state[num],
};
});
};
return (
<div>
{nums.map(i => {
return <button key={i} name={!activeNums[i] && 'ready'} onClick={(e) =>
handleClass(i, e)} className={`${activeNums[i] ? 'game_clicked' : ''}
game_btn `}>{i}</button>
})}
</div>
);
}