我有一个商店:
class Store {
user!: User;
constructor() {
makeObservable(this, {
user: observable,
setUser: action
});
}
setUser = (user: User | undefined) => this.user = user;
}
我收到此错误:Error: [MobX] Cannot apply 'observable' to 'Store@user': Field not found.
User
是一个自定义对象,我应该以不同的方式对待他(可观察的明智的)?
提前致谢!
默认情况下 make(Auto)Observable
只支持已经定义的属性,所以需要定义user
在构造函数内部或使其可为空,如下所示:user: User | null = null
.
或者您可能想尝试重新配置类属性初始化如何工作, using useDefineForClassFields
TS 编译器标志:
"compilerOptions": {
"useDefineForClassFields": true
},
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)