Javascript React Redux中的DispatchToProps()方法
我一直在看一些react-redux代码,我被下面的代码片段卡住了Javascript React Redux中的DispatchToProps()方法,javascript,reactjs,redux,Javascript,Reactjs,Redux,我一直在看一些react-redux代码,我被下面的代码片段卡住了 const mapDispatchToProps=dispatch=>({ addComment: (dishId, rating, author, comment) => dispatch(addComment(dishId, rating, author, comment)) }) 我在Javascript方面没有那么丰富的经验,所以最好能澄清一下mapDispatchToProps方法的作用 我知道
const mapDispatchToProps=dispatch=>({
addComment: (dishId, rating, author, comment) => dispatch(addComment(dishId, rating, author, comment))
})
我在Javascript方面没有那么丰富的经验,所以最好能澄清一下mapDispatchToProps方法的作用
我知道这个方法是什么,我只是对Javascript部分感到困惑
mapDispatchToProps
是redux中connect
函数的第二个参数MapStateTops
是第一个。将mapDispatchToProps
定义为dispatch
的函数,该函数返回一个对象。语法constsomething=dispatch=>({…})
是返回对象的箭头函数的缩写。这几乎和
功能图DispatchToprops(调度){
返回{
addComment:(dishId,…)=>dispatch(addComment(dishId,…)
}
}
当您将mapDispatchToProps
馈送到connect
,然后将组件包装在该connect
中时,它会将返回对象的属性和方法作为道具注入组件中。因此命名为mapXToProps
。它通常是这样使用的:
导出默认连接(mapStateToProps、mapDispatchToProps)(组件)
如果没有MapStateTops
,请在其位置使用null
mapDispatchToProps
允许您将redux操作注入组件,以便通过组件上的道具影响redux存储mapStateToProps
与此类似-它允许您从redux商店中获取项目,并将它们分配给组件上的道具。在您的示例中,您现在可以访问this.props.addComment
作为包装组件上的道具。这就是将组件连接到redux存储的方式,以及向存储发送和接收数据的方式
请注意,这些只是命名约定。实际上,您可以根据需要命名这些函数-但大多数人使用MapStateTrops
和mapDispatchToProps
,因为它非常能描述发生了什么。您可以将它们命名为puppy
和booya
,用于所有redux护理,只要您将它们正确地喂给connect
必须的。虽然坦率地说,在我学习这一点的时候,实际上也有人向我解释过,但文档是一个很好的资源。
mapDispatchToProps
是redux中connect
函数的第二个参数MapStateTops
是第一个。将mapDispatchToProps
定义为dispatch
的函数,该函数返回一个对象。语法constsomething=dispatch=>({…})
是返回对象的箭头函数的缩写。这几乎和
功能图DispatchToprops(调度){
返回{
addComment:(dishId,…)=>dispatch(addComment(dishId,…)
}
}
当您将mapDispatchToProps
馈送到connect
,然后将组件包装在该connect
中时,它会将返回对象的属性和方法作为道具注入组件中。因此命名为mapXToProps
。它通常是这样使用的:
导出默认连接(mapStateToProps、mapDispatchToProps)(组件)
如果没有MapStateTops
,请在其位置使用null
mapDispatchToProps
允许您将redux操作注入组件,以便通过组件上的道具影响redux存储mapStateToProps
与此类似-它允许您从redux商店中获取项目,并将它们分配给组件上的道具。在您的示例中,您现在可以访问this.props.addComment
作为包装组件上的道具。这就是将组件连接到redux存储的方式,以及向存储发送和接收数据的方式
请注意,这些只是命名约定。实际上,您可以根据需要命名这些函数-但大多数人使用MapStateTrops
和mapDispatchToProps
,因为它非常能描述发生了什么。您可以将它们命名为puppy
和booya
,用于所有redux护理,只要您将它们正确地喂给connect
必须的。坦率地说,当我学习这一点时,有人也不得不向我解释,但文档是一个很好的资源。您是否将您的组件作为此连接(mapStateToProps,mapDispatchToProps)(组件)进行连接(mapStateToProps,mapDispatchToProps)(组件)您是否将您的组件作为此连接进行连接(MapStateTops,mapDispatchToProps)(组件)