首页 > 其他分享 >reactHooks_useEffect

reactHooks_useEffect

时间:2022-11-14 11:00:32浏览次数:54  
标签:const 渲染 reactHooks num setNum 组件 useEffect

当在直接在组件内使用setState时,会产生“渲染次数过多”的错误

例如:

const A = ( ) => {

  const [num,setNum] = useState(1);

  setNum(1);

  return (<>{num}</>);

};

虽然之前的num与之后的num内容一致,应不会产生渲染

但setNum() 之后的内部方法是 dispatchSetDate(),它会去判断当前在什么阶段

如果是渲染阶段(个人理解是A组件运行过程中)则不会检查num值是否相同,每次setNum()过后都会重新渲染(执行A组件),导致死循环

等A组件过程结束,则会检查num值是否相同。

一般这种情况,可以使用useEffect

标签:const,渲染,reactHooks,num,setNum,组件,useEffect
From: https://www.cnblogs.com/1-QAQ-3/p/16888336.html

相关文章