react-redux
的{{3}}似乎没有提供connect()
注入的道具的完整列表。
connect()的返回是一个包装函数,可将您的 组件,并返回包装器组件及其附加道具 注入。
mapDispatchToProps
和mapStateToProps
添加的道具旁边还有哪些其他道具。例如,dispatch
道具已注入所有组件,但未在文档中指定。
还有其他诸如dispatch
之类的道具被注入吗?这种行为在将来的版本中会稳定吗?
如果注入了dispatch
。我也希望注入getState
。
答案 0 :(得分:0)
connect()
不带道具的包装器函数只是注入而已,不监听存储。
export default connect()(YourComponent)
对代码https://github.com/reduxjs/react-redux/tree/master/src/connect进行一些研究,您会在两个文件/函数中找到答案:
https://github.com/reduxjs/react-redux/blob/master/src/connect/mapDispatchToProps.js
export function whenMapDispatchToPropsIsMissing(mapDispatchToProps) {
return !mapDispatchToProps
? wrapMapToPropsConstant(dispatch => ({ dispatch })) // ***** inject dispatch
: undefined
}
和
https://github.com/reduxjs/react-redux/blob/master/src/connect/mapStateToProps.js
export function whenMapStateToPropsIsMissing(mapStateToProps) {
return !mapStateToProps
? wrapMapToPropsConstant(() => ({})) // ***** empty object
: undefined
}