可以解构useSelector
来源:8-10 【redux封装】在函数式组建中使用react-redux

袁门弟子
2023-09-14
可以这样用一个对象来整体return state,然后解构出来
本来觉得可能这样解构state会有状态‘失活’的问题,但是想了一下,react和vue不同,不是数据监听形式。
而是单向数据模式,即:通过setState(或useState的状态修改器),修改数据之后,就会更新到redux中,redux会重新rerender,然后重新执行useSelector,重新产出新的state状态。
但是vue就不行了,vue是数据监听,即数据本身是‘被处理过的’,并非普通数据,如果解构,应该是相当于重新拷贝数据内存地址,只是值是同样的,而失去了数据监听特征,所以会造成‘失活’。
总结来说:react中的状态数据就是简单的数据,react触发rerender是依赖setState或者useState的状态修改器。而vue的rerender是依赖数据监听。所以vue在做状态处理的时候尤其要注意,是否会“失活”。
框架对比来看就会发现他们的不同,哈哈
写回答
1回答
-
非常有道理,理解得已经相当深入了212023-09-17
相似问题