反应Redux TypeError this.props.setEmailText不是一个函数。是bindind问题,因为当我通过{... this.props}获得道具时,一切都很好吗? https://codesandbox.io/s/reduxex1-f9sid
import React from "react";
export default class Auth extends React.Component {
constructor(props) {
super(props);
this.onEmailChange = this.onEmailChange.bind(this);
this.onPasswordChange = this.onPasswordChange.bind(this);
}
onEmailChange(e) {
this.props.setEmailText(e.target.value);
}
onPasswordChange(e) {
this.props.setPasswordText(e.target.value);
}
答案 0 :(得分:0)
您将this.props.setEmailText
传递给onEmailChange
组件Auth
的{{1}}属性。更改为使用一致的道具名称。
onEmailChange={this.props.setEmailText}
现在class AuthContainer extends React.Component {
render() {
return (
<Auth
email={this.props.email}
password={this.props.password}
setEmailText={this.props.setEmailText} // <-- use setEmailText
setPasswordText={this.props.setPasswordText}
/>
);
}
}
可以访问道具
Auth