我有一个非常简单的 React 登录页面:
import React from "react";
import {browserHistory} from 'react-router';
export default class Login extends React.Component{
constructor(){
super();
this.handleEmail = this.handleEmail.bind(this);
this.handlePW = this.handlePW.bind(this);
this.handleLogin = this.handleLogin.bind(this);
this.state = {
email: "",
pw: "",
}
}
handleEmail(event){
this.setState({email:event.target.value});
console.log(setState);
}
handlePW(event){
this.setState({pw:event.target.value});
console.log(setState);
}
handleLogin(){
console.log("clicked");
}
render(){
return(
<div>
<form>
Email:
<br/>
<input type="text" id="email" onChange={this.handleEmail}/>
<br/>
PW:
<br/>
<input type="text" id="pw" onChange={this.handlePW}/>
<input type="submit" value="Submit" id="submit" onClick={this.handleLogin}/>
</form>
</div>
)
}
}
我遇到以下错误:“ReferenceError:setState 未定义”
我的目标是在单击提交按钮时分配电子邮件和密码的值。我阅读了其他一些 StackOverflow 问题,看来问题出在 this 绑定(bind)上——我尝试在构造函数中解决这个问题。是什么导致了这个错误?
最佳答案
如果您的目标是将状态记录到控制台,则应使用 console.log(this.state)
。
关于javascript - React : setState is not defined, 我已经尝试绑定(bind)这个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46842513/