关于不可变值

来源:7-10 在实际工作中,你对React做过哪些优化-上集

袁门弟子

2023-02-02

老师好,不可变值您直接push数组,渲染数组的子组件也可以添加item,这是因为:

1:state数组直接push,也可以被修改。

2:子组件没有用scu,每次父组件render子组件也会被render执行。

但如果用scu,就无法更新子组件dom,因为scu需要新旧数据对比,此时的scu里面的数组,都是最新数据,因为是直接push的同步修改。setstate的意义在于:由react去修改数据,这样react会有新旧数据,让scu去对比判断,如果返回true就覆盖旧数据,进而render子组件,不然就中止数据修改和子组件的render

我这样理解对吗?

写回答

1回答

双越

2023-02-02

看到你还几次问“这样理解对吗”一类的问题。这让我有些困惑。

第一,如果你是分享学习笔记,我很欢迎,很好。

第二,如果你在具体的地方有疑问,那提出来,我也会及时回复你。

但你这个“这样理解对吗”就类似于:学生给老师写了 200 个字,让老师找里面有没有错别字。


所以,我希望你以后的问题,就是一个具体的问题。

PS:每日回复问题较多,所以不得不如此考虑,还请你体谅一下~

0
2
双越
回复
袁门弟子
对的。
2023-02-03
共2条回复

2周刷完100道前端优质面试真题 双越最新力作

『前端面试真题100道』视频详解

1509 学习 · 642 问题

查看课程