react redux中的函数 mapStateToProps 和 mapDispatchToProps 参数之间有什么区别connect?任何人都可以通过示例给出适当的解释
mapStateToProps
mapDispatchToProps
connect
mapStateToProps是用于将存储数据提供给组件的功能,而mapDispatchToProps将用于提供动作创建者作为组件的功能的函数。
根据文档:
如果 mapStateToProps 指定了参数,则新组件将订阅Redux存储更新。这意味着将在商店更新的任何时间mapStateToProps被调用。的结果 mapStateToProps必须是一个普通对象,该对象将合并到组件的道具中。 随着 mapDispatchToProps 每一次行动的创建者裹成一个调度呼叫,使他们可以直接调用,将被合并到组件的道具。
如果 mapStateToProps 指定了参数,则新组件将订阅Redux存储更新。这意味着将在商店更新的任何时间mapStateToProps被调用。的结果 mapStateToProps必须是一个普通对象,该对象将合并到组件的道具中。
随着 mapDispatchToProps 每一次行动的创建者裹成一个调度呼叫,使他们可以直接调用,将被合并到组件的道具。
一个简单的例子是
function mapStateToProps(state) { return { todos: state.todos } } function mapDispatchToProps(dispatch) { return { addTodo: bindActionCreators(addTodo, dispatch) } } export default connect(mapStateToProps, mapDispatchToProps)(Todos);