: stateProps
部分是什么意思?我知道整个mapStateToProps
函数是可选的,它接受state
的第一个参数和ownProps
的可选第二个参数,但是:
指定了什么?这是函数返回的内容吗?
[mapStateToProps(state, [ownProps]): stateProps]
答案 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
的参数,它将返回类型"数字"的值。