react改造angular项目的一些感受
项目迁移小程序
~
最近有个老项目,部分核心模块需要用react重写,用的react最新版本,所以直接使用react hook
在开发的过程中,不断产生问题,不断解决问题,这样进步是飞快
今天列下开发过程中遇到的几个问题
1、什么时候把变量放在useState,什么时候放外面独立的状态变量
2、对于引用类型,不能局部更新(即:不能只改某个属性),所以,需要使用扩展运算符先拷贝以前所有的属性
~
setPerson({
...person, //拷贝之前的所有属性
age:person.age+1,
name: '芬芬' //这里的name覆盖之前的name
})
~
其中第一个问题,困惑了我好几天,其实这个问题,很简单,就像小程序里面的setData一样,哪些变量需要放在data里面,哪些不需要,这要根据页面渲染是否需要来定
但是前面几天始终没想明白这个问题
不过今天开发过程中遇到了一个反复循环渲染的问题,还没有定位到问题在哪里
~
“Error: Too many re-renders. React limits the number of renders to prevent an infinite loop.”
~