我是在一个简单的应用程序中第一次使用React Native设置Redux。
根据sql fiddle我使用redux for React Native的设置应该正常工作,但是当我点击我的应用程序主屏幕上的“交换货币”按钮时,我收到错误“this.props.dispatch不是一个东西”。为什么我的Home组件没有获得调度支柱?
(根据this,connect()
函数应该获得默认mapDispatchToProps
,这就是我现在想要的。)
查看documentation处的代码。 (相关文件是App.js,app / components / Home.js,app / config / store,reducers文件夹和actions文件夹)
谢谢:)
答案 0 :(得分:1)
你必须将“this”传递给函数。当你调用你的函数handleSwapCurrency不知道你的上下文。所有你需要做的:
handleSwapCurrency = () => {
console.log("pressed swap currency");
this.props.dispatch(swapCurrency());
}
这允许你使用这个类,因为箭头函数没有它们拥有它。你也可以在构造函数中绑定你的函数。