上篇文章写到了redux实现组件数据共享的方法,但是在react中,redux作者提供了一个更优雅简便的模块实现react组件之间数据共享。那就是利用react-redux
利用react-redux实现react组件数据之间数据共享
1.安装react-redux
2.从react-redux导入Prodiver组件将store赋予Provider的store属性,
将根组件用Provider包裹起来。
这样根组件中所有的子组件都可以获得store中的值
3.connect二次封装根组件
connect接收两个函数作为参数,一个mapStateToProps定义哪些store属性会被映射到根组件上的属性(把store传入react组件),一个mapDispatchToProps定义哪些行为action可以作为根组件属性(把数据从react组件传入store)
3.定义这两个映射函数
}
}
把store中的name,pass映射到根组件的name,pass属性。
actions是一个包含了action构建函数的对象,用bindActionCreators把对象actions绑定到根组件actions属性上。
4.在根组件引用子组件的位置用
将store数据传入子组件.
5.在子组件中调用actions中的方法来更新store中的数据
先将actions作为属性传入子组件
)
}
}