Redux中'mapStateToProps'和'mapDispatchToProps'有什么用?

时间:2018-01-06 05:19:16

标签: react-redux

我无法理解 mapDispatchToProps mapStateToProps 的实际用途,请以示例说明。

1 个答案:

答案 0 :(得分:2)

mapDispatchToProps和mapStateToProps是两个API。

mapStateToProps提供了商店的当前状态对象,使用它我们可以过滤和使用所需的状态部分。我们还可以提供ownProps参数,该参数包含Component的父提供的参数。 e.g:

   const mapStateToProps = (state, ownProps) => {
     return state;
   }

mapDispatchToProps允许在我们的组件内部使用函数。因此,使用actionCreators,我们可以提供可以直接使用的函数,而无需在Component中调度它们,例如:

const mapDispatchToProps = dispatch => {
return {
    login1: bindActionCreators(login, dispatch)
}
}

此处提供给bind函数的登录名从action fil导入为*。例如,从'文件名'

导入登录为*

现在Connect是另一个API,它由react-redux提供,它提供真正的粘合剂并使事情有效,例如:

  export default connect(mapStateToProps,null,mapDispatchToProps)(Login)

此处登录是我们需要映射到的组件(类)。

希望这可能会清楚,差异随时可以询问是否还有更多的信息