首页 > 解决方案 > 如何知道状态中的哪些项目在 useEffect 挂钩中发生了变化

问题描述

在每次重新渲染时运行 useeffect 以防止我传递一个空数组

React.useEffect(()=>{},[])

并触发对状态变化的使用效果,比如说计数状态变量

React.useEffect(()=>{},[count])

如果我有多个状态变量

React.useEffect(()=>{},[count, somethingelse])

我的问题是如何知道哪个状态变量导致了 useeffect 钩子的触发

标签: reactjsreact-native

解决方案


所以当状态改变时运行useEffect,你肯定会知道状态的值是多少。例如:

useEffect(() => {
if(count){
  ...code
}
} , [count, somethingelse])

所以基本上你可以添加条件来检查状态的值是否是你想要的值,然后运行想要的代码。


推荐阅读