[Redux/Mobx] 为什么redux能做到局部渲染呢?
reducer从根往最子级的reducer中间各层总是返回一个新的state,这样的话,就会引起组件的大范围的re-render,但是这是可避免的
- 合理的利用selector:在connect函数中的第一个函数
mapStateToProps
中从store state中返回当前组件需要使用的props,需要一个筛选,这个筛选函数就叫做selector,需要尽量细化传入的store state,即使根state发生了引用的变更,但是它下面的属性值可能是大部分都还是原来的引用,引用了这个老引用的情况下,是不会引起组件的re-render的;正因为如此,因为一般都不会将整个store state组为组件的props进行引用,所以利用这一点就可以实现局部渲染
个人简介
我是歌谣,欢迎和大家一起交流前后端知识。放弃很容易,
但坚持一定很酷。欢迎大家一起讨论
主目录
与歌谣一起通关前端面试题