【发布时间】:2020-10-19 13:32:48
【问题描述】:
我有一个声明的状态和一个在点击时修改该状态的函数。是这样的。
const [sdgs, setSdgs] = useState([]);
const handleClick = (sdg) => {
if (sdgs.includes(sdg)) {
const index = sdgs.indexOf(sdg);
if (index > -1) {
setSdgs([...sdgs.slice(0, index), ...sdgs.slice(index + 1)]);
}
} else {
setSdgs([...sdgs, sdg]);
}
};
当点击图片时会调用它
<img
src={no_poverty_1}
alt="No Poverty"
name="sdg1"
className={`${style.sdgTileSignUp} mx-2 my-4 ${
sdgs.indexOf("sdg1") > -1 ? style.selected : null
}`}
onClick={() => handleClick("sgd1")}
/>
所以,我想要的是 onClick 我想在图像标签中添加一个“选定”类。但不知何故,每次三元操作返回false。
【问题讨论】:
-
handleClick("s
gd1") sdgs.indexOf("sdg1")
标签: reactjs react-hooks jsx conditional-operator react-state