我正在尝试在axios调用后设置状态。在then子句中,我一直试图用this.setState({...})
设置状态,但这在这里未定义。
为什么console.log(this)
在控制台中打印“未定义”?
clickButton() {
let data = {
username : document.querySelector('#email').value,
password : document.querySelector('#password').value
};
axios.post('http://127.0.0.1:8000/api/login_check', data, {
headers: {
'Content-Type' : 'application/json',
}
})
.then(res => {
console.log(this)
})
}
答案 0 :(得分:1)
最明显的原因是,由于clickButton函数不是箭头函数,因此您必须忘记将函数绑定到构造函数中。或者,将clickButton切换为箭头功能,就可以了。
答案 1 :(得分:0)
尝试以下代码将其绑定到点击按钮功能
clickButton =()=> { .... }