错误:[MobX] 无法将“observable”应用于“Store@user”:找不到字段

2023-11-27

我有一个商店:

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 useDefineForClassFieldsTS 编译器标志:

"compilerOptions": {
  "useDefineForClassFields": true
},
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

错误:[MobX] 无法将“observable”应用于“Store@user”:找不到字段 的相关文章

随机推荐