当我尝试更改输入字段上的值时收到以下警告。
无法在尚未安装的组件上调用 setState。这是一个空操作,但它可能表明您的应用程序中存在错误。相反,在登录组件中
this.state
直接分配或定义state = {};
具有所需状态的类属性。
我不明白为什么会发生这种情况,它在我的任何其他react页面上都没有发生。
唯一的区别是这是登录页面,所以它有自己的页面路由。
任何人都可以帮忙吗?我已经将我的组件剥离回裸露的骨头,看看是否有人能发现我做错了什么。
import React, { Component } from 'react';
class Login extends Component {
constructor(props) {
super(props);
this.state = {
username: ''
};
this.onChange = this.onChange.bind(this);
}
onChange(e) {
this.setState({ [e.target.name]: e.target.value });
}
render() {
const { username } = this.state;
return (
<input type="text" placeholder="Email" className="form-control" name="username" autoComplete="email" value={username} onChange={this.onChange} />
);
}
}
export default Login;