redux如何关联react?


本文摘自PHP中文网,作者青灯夜游,侵删。

在react中可以react-redux库来关联redux;react-redux提供了一些封装,可以以一种更科学的代码组织方式,让我们更舒服地在React的代码中使用Redux。

本教程操作环境:windows7系统、React17版,该方法适用于所有品牌电脑。

Redux本身和React并没有之间的关联,它是一个通用Javscript App模块,用做App State的管理。要在React的项目中使用Redux,比较好的方式是借助react-redux这个库来做连接,这里的意思是,并不是没有react-redux,这两个库就不弄一起用了,而是说react-redux提供了一些封装,一种更科学的代码组织方式,让我们更舒服地在React的代码中使用Redux。

redux和react是怎么配合的?

react-redux提供connect和provider两个基友,他们connect将组件和redux关联起来,provider将store传递给组件,组件通过dispatch发出action, store根据action的type属性调用对应的reducer并传入state和这个action,reducer对state进行处理返回一个新的state放入store, connect监听到store的变化,调用setState更新组件,此时组件的props也就跟着发生变化。

Provider:

provider是一个组件,它接受store作为props,然后通过context往下传,这个react中任何组件都可以通过context获取store;

connect:

connect(mapStateToProps, mapDispatchToProps, mergeProps, options)是一个函数,它接受四个参数并且返回一个函数―wrapWithConnect,wrapWithConnect它接受一个组件作为参数wrapWithConnect(component), 它内部定义一个新的组件connect(容器组件)并将传入的组件作为connect的子组件然后return出去。

mapStateToProps(state.[ownPros]):

mapStateToProps接受两个参数,store的state和自定义的props,并返回一个新的对象,这个对象会作为props的一部分传入UI组件。我们可以根据组件所需要的数据自定义返回一个对象,ownProps的变化也会触发mapStateToProps

mapDispatchToProps(dispatch,[ownProps]):

mapDispatchToProps如果是对象,那么会和store绑定作为props的一部分传入UI组件。如果这个函数接受两个参数,bindActionCreators会将action和dispatch绑定并返回一个对象,这个对象会和ownProps一起作为props的一部分传入UI组件,所以不论mapDispatchToProps是对象还是函数,它最终都会返回一个对象,如果是函数,这个对象的key值是可以自定义的。

更多编程相关知识,请访问:编程教学!!

以上就是redux如何关联react?的详细内容,更多文章请关注木庄网络博客

相关阅读 >>

weex和react native区别是什么

react中怎么改变state的值

react中的portal是做什么的

react native和react的区别是什么

react中material-ui是什么

不用脚手架搭建react的方法

怎么在react代码中打断点

react是javascript吗

react创建组件的三种方式是什么

react移动端框架有哪些

更多相关阅读请进入《redux》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...