React - 导航到 Redux 连接的组件

React - Navigate to Redux connected component

我正在尝试将 Redux 合并到我的 React 本机应用程序中。我正在使用 React native Navigator 组件进行应用程序导航。我的 renderScene 方法如下所示(带有辅助函数):

var Login = require('./src/ui/views/login/login');
.
.
.
getRoute: function(routeName){

const Routes = {
  Login: Login,
  Waiting: Waiting,
  LogoView: LogoView
};

return Routes[routeName];

},

_renderScene: function(route, navigator) {
 var component = this.getRoute(route.name);
 console.log('Navigate to:');
 console.log(component);
 var props = {
  navigator: navigator
};
 return React.createElement(component, props);
},

我像这样导出登录组件(和其他组件):

module.exports = connect((state) =>{state.token})(Login);

无法导航到使用 Redux connect wrapper 方法导出的任何视图。我得到的错误是“mapStateToProps must return an object. Instead received undefined”。像这样导出组件时工作正常

module.exports = Login;

因为我想实现 Redux,我将非常感谢任何关于使用 redux 导出的帮助 "connect()" 或者任何关于我做错了什么的提示

非常感谢!

/约翰

这里的错误在connect里面的箭头函数。花括号在这里不能像您预期的那样工作。如果你想 return 一个对象,你应该把它包在括号里:

module.exports = connect((state) => ({token: state.token}))(Login);

有关所有可能的箭头函数用例,请参阅

此外,{state.token} 不是有效的对象字面量。您只能将较短的形式与标识符一起使用,例如 {state}.