react.js - redux的subscribe()监听函数

查看:947
本文介绍了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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆