我是钩子的新手,在使用钩子时遇到问题。我有两个组成部分:
const Button = ({ isHidden, icon, onClick }) => {
return (
<div>
{isHidden ? (
<button className="tile" onClick={onClick} />
) : (
<button className="tile" onClick={onClick}>
<i className={icon} />
</button>
)}
</div>
);
};
const Board = () => {
const [isHidden, setIsHidden] =useState(Array(12).fill(true));
const [icon] = useState(animalArray);
const renderButton = index => {
return (
<Button
icon={icon[index]}
isHidden={isHidden[index]}
onClick={() =>setIsHidden(!isHidden[index])}
/>
);
};
return (
<div className="board">
<div className="container">
<div className="row align-items-start">
<div className="col-3">{renderButton(0)}</div>
<div className="col-3">{renderButton(1)}</div>
<div className="col-3">{renderButton(2)}</div>
因此,我当然想在单击其按钮后在特定图块中切换isHidden状态。取而代之的是,我在第一次单击时翻转了所有磁贴,然后在随后的单击中没有任何反应。我尝试修改它,例如创建新变量,复制isHidden等。谢谢。
catspeake
胡说叔叔
相关分类