react.js - redux的subscribe()监听函数
本文介绍了react.js - redux的subscribe()监听函数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
我看网上有的代码 redux都没使用这个监听state变化的函数 直接利用reducer返回一个新的state 就组件就发生变化了
解决方案
在react里面用redux,一般我们会用到react-redux,其中包括Provider和connect接口
Provider接收redux的createStore()的结果,并且放到context里,让子组件可以通过context属性直接获取到这个
createStore的结果,这个createStore的结果是啥呢,如下几个函数:
return {
//真正的返回,执行createStore其实返回的就是这些东东
dispatch, //触发action去执行reducer,更新state
subscribe, //订阅state改变,state改变时会执行subscribe的参数(自己定义的一个函数)
getState, //获取state树
replaceReducer, //替换reducer
}
而connect,接收到mapStateToProps,会在内部subscribe全局state的改变,来判断props是否更改,如果需要更新,才触发更新。
react-redux就是不需要你自己去subscribe全局state的变化,以及去getState,还有判断组件是否需要更新。也是它存在的意义
这篇关于react.js - redux的subscribe()监听函数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文