使用过的create-react-app创建反应应用
所以我将mobx与react一起使用并创建了以下类:
import { action, decorate, observable } from "mobx";
class AuthStore {
loading = false;
login() {
console.log(this.loading);
}
}
decorate(AuthStore, {
loading: observable,
login: action
});
export default AuthStore;
它说加载是不确定的,但是我不知道为什么...
this
的值取决于login
的调用上下文,而不取决于声明的位置。我没有看到login
在类中被调用,这意味着它不会引用类实例。
最简单的解决方案是将函数转换为使用词法作用域的箭头语法(引用类时将具有this
。
login = () => {
console.log(this.loading);
}