小编And*_*rew的帖子

React 条件操作 - useEffect 与 if 语句

对 React 来说相对较新,遇到了一些我不确定答案的问题。如果有条件操作,useEffect与仅使用 if 语句有区别吗?

function Items() {
    [setItemAdded, itemAdded] = useState(false);
    
    if (itemAdded) {
      saveData();
      itemAdded = false;
    }

}
Run Code Online (Sandbox Code Playgroud)

     useEffect(() => {
         if (itemAdded) {
             saveData();
             itemAdded = false;
         }, [itemAdded]);
          

Run Code Online (Sandbox Code Playgroud)

根据我的理解,当状态更新时itemAdded,它将重新渲染将调用条件语句并执行代码的组件。

在第二种情况下,由于是一个依赖项,因此每当更改itemAdded时都会调用它。itemAdded对我来说,这两种情况似乎具有相同的效果。两者有区别吗?

reactjs react-hooks use-effect

5
推荐指数
1
解决办法
1136
查看次数

标签 统计

react-hooks ×1

reactjs ×1

use-effect ×1