我有一个非常简单的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>
)
}
}
我遇到以下错误:&#34; ReferenceError:未定义setState&#34;
目标是让我在“提交”按钮上分配“电子邮件”和“密码”的值。我读了一些其他StackOverflow问题,看起来问题是这个绑定 - 我试图在构造函数中解决这个问题。导致此错误的原因是什么?
答案 0 :(得分:1)
如果您的目标是将状态记录到控制台,则应使用console.log(this.state)
。