我有一个问题,useState
每当更新时都会调用以前的值。有没有办法使用useEffect
来检查它的更新?
const [thisButtomSelected, setThisButtomSelected] = useState({
thisVal: 0,
thisIndex: 0,
})
const onClick = e => {
setThisButtomSelected({ thisVal: e.currentTarget.value, thisIndex: e.currentTarget.id });
}
<li id="list" key={item.id}>
<button
value={item.value}
id={index}
className={isEqual(thisButtomSelected, { thisVal: item.value, thisIndex: index })
? 'button-selected' : 'button'
}
onClick={onClick}
>
{item.displayValue}
</button>
</li>
1条答案
按热度按时间p5fdfcr11#
你的问题并不清楚你想做什么,但是让
useEffect
知道状态更改可以这样做:useEffect
中的函数将在thisButtomSelected
更改时执行,并且在组件第一次呈现时执行。