redux文档对mapStateToProps意味着什么?

时间:2017-04-16 23:59:27

标签: javascript reactjs redux

: stateProps部分是什么意思?我知道整个mapStateToProps函数是可选的,它接受state的第一个参数和ownProps的可选第二个参数,但是:指定了什么?这是函数返回的内容吗?

[mapStateToProps(state, [ownProps]): stateProps]

1 个答案:

答案 0 :(得分:2)

我的理解是你是对的:在这种情况下,冒号后面的信息表示从函数返回的值的类型。换句话说,此函数将返回可以作为连接组件的prop来访问的值,更具体地说,将是prop s,其中包含一些状态表示,因此名称为{{ 1}}。

我不知道对于JavaScript的函数签名或者具体的react / redux,这种类型的语法的官方(甚至非官方)描述。但是,我确实发现this other StackOverflow answer讨论了TypeScript代码的这种语法。我也看到过这种类型的函数签名语法,例如PHP(例如this other StackOverflow question)。

请注意,冒号后跟一个类型不仅可以指代从函数返回的值的类型,还可以指代在函数签名的括号内找到的函数参数的类型。例如,在this GitHub description of Flux中,您会找到以下行:stateProps。这意味着应该使用两个参数来调用这个名为reduce(state: number, action: Object): number {...的特定函数,一个名为reduce的参数类型为" number"以及类型为" Object"的名为state的参数,它将返回类型"数字"的值。