Javascript 控制台无法记录状态
尝试将信息从状态记录到控制台时,返回错误“undefined is not a object evaluation”this.state.userName 我对JS非常陌生,所以我真的不知道它是如何工作的,或者应该如何工作 我尝试将“this.state.userName”替换为Javascript 控制台无法记录状态,javascript,console.log,react-state-management,Javascript,Console.log,React State Management,尝试将信息从状态记录到控制台时,返回错误“undefined is not a object evaluation”this.state.userName 我对JS非常陌生,所以我真的不知道它是如何工作的,或者应该如何工作 我尝试将“this.state.userName”替换为 - (userName) => this.getState(userName) - this.state[userName] - 'this.state[1] 这些都没有达到预期的效果 这是我的密码:
- (userName) => this.getState(userName)
- this.state[userName]
- 'this.state[1]
这些都没有达到预期的效果
这是我的密码:
constructor(props){
super(props);
this.state = {
userName:'User Name',
userEmail:'',
loggedIn: false,
};
}
login() {
console.log(this.state.userName);
};
我只想让控制台记录分配给用户名的任何内容,即“用户名”
通过以下方式调用登录:
onPress={this.login}这是一种快速浏览对象的方法,您可能会看到导致问题的原因: console.dir this.state;
它会将对象的可扩展视图转储到控制台,以便您可以查看其中的内容及其属性。解决方案发现19年6月26日:
onPress={this.login.bind(this)} or onPress={() => this.login()}
发现人:可能重复您需要在构造函数中将登录名与此绑定:this.login=this.login.bindthis如何调用登录名?我同意这看起来像是一个范围问题。换句话说,这可能不是您所认为的。onPress={this.login.bindthis}或onPress={=>this.login}