我对国家无法设置有一些疑问, 当我按下按钮时,状态设置为“ loading:true”,但是当我对Auth遇到一些错误时,我需要在写案例时将状态设置为“ loading:false”,以返回“登录”屏幕,但卡住了在 LOADING 中! 错误是
“(id:0): TypeError:this.setState不是函数”
注意,我正在使用React Native Firebase 这是我的代码|
f
答案 0 :(得分:1)
将catch(function(error) {})
更改为箭头函数以获得this
上下文
.catch((error) => {
//...
this.setState({ ... });
})
匿名函数具有其自己的上下文...为了获取对父上下文的引用,我们需要手动绑定它。与箭头函数不同...自动绑定到父上下文的原因是它没有自己的this
箭头函数本身没有此函数。这个值 使用封闭的词汇范围;箭头功能遵循正常 可变查找规则。所以在寻找这个不是 在当前范围内存在,他们最终从其封闭中发现了这一点 范围。
来源:MDN