TypeError:this.props.dispatch不是函数

时间:2018-12-31 20:49:11

标签: javascript reactjs redux

我想通过单击“登录”或“注册”按钮显示一个模块化窗口,并且出现以下错误(TypeError:_this.props.dispatch不是函数)。一个项目中的相同代码通常可以在另一个项目中使用。

column_c

1 个答案:

答案 0 :(得分:-1)

欢迎堆栈溢出。

如果一切正确,那么您应该不会有问题。

错误消息表明dispatch属性是函数以外的东西-如果是这样,您应该在控制台中得到警告。

为您节省一些代码的提示...使用如下所示的粗箭头功能,这些功能会自动绑定到this,因此您无需在构造函数中绑定它们:

  constructor(props) {
    super(props);
// No longer needed
    // this.login = this.login.bind(this);
    // this.register = this.register.bind(this);
   }

  login = () => {
    this.props.dispatch(
      openModal({content: <Login />,title: "Login"}));
  }
  register = () => {
    this.props.dispatch(
      openModal({content: <Register />,title: "Register"}));
  }