所以我有一个导航栏,我希望它显示用户的名字,如果他们已登录,我有这个如果声明:
var that= this;
this.state = {name: null, signedIn: false}
if (user){
axios.get('https://apiendpoint/' + user.id)
.then(function (response) {
console.log(response);
that.state = {name: response.data.firstName, signedIn: true}
//this.setState({ showModal: false });
})
.catch(function (error) {
console.log(error);
});
}
if语句正在运行,但状态变量似乎没有设置。 var that =this
无法设置状态变量,或者有更好的方法吗?
答案 0 :(得分:0)
想出来。我不得不使用that.setState({...});
而不是this.state = {...}