小编典典

mapstatetoprops和mapdispatchtoprops之间有什么区别

reactjs

react redux中的函数 mapStateToPropsmapDispatchToProps
参数之间有什么区别connect?任何人都可以通过示例给出适当的解释


阅读 289

收藏
2020-07-22

共1个答案

小编典典

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);
2020-07-22