记一次react hooks的坑!!!

直接上一段代码

1  React.useEffect(()=>{
2       if(!show){
3          return null;
4       }
5    },[]);

我们在都知道在hooks组件卸载的时候需要传递一个函数,卸载时候会执行这个状态,

上面的代码我们本意是想在!show时候就返回,不继续执行了,但是react框架在编译时候错误把null当成func进行解析了,

但是他又不符合react返回函数的机制,导致我们这里出现了问题,最终导致我们页面白屏,

白屏后我一开始以为接口问题,紧接着webapck配置的问题,就去测试环境改配置,后来以为router跳转问题,最后以为tsconfig配置问题,反正所有都改了一遍没有效果,

最后恶心了好几天解决了问题

正确的写法如下,我们直接return就行了

1  React.useEffect(()=>{
2       if(!show){
3          return;
4       }
5    },[]);

 

上一篇:前端框架及项目面试-聚焦Vue3/React/Webpack学习笔记 百度网盘 下载


下一篇:React Hooks使用避坑指南