我想自动获取如下用户数据,但在观察行出现错误:


  未捕获的错误:[mobx]不变失败:无法从[对象对象]获取原子


class AuthStore {

 @observable loggedIn = false;
 @observable userData;

  constructor() {
    observe(this, 'loggedIn', (change) => {
          if (change.loggedIn) {
            this.getUserData();
          }
    });
  }

  async getUserData() {
    const response = await ajax({
      url: '/users/me',
      method: 'GET'
    });
    const data = await response.json();
    //todo handle some errors here
    this.userData = data.user;
  }

}

最佳答案

你已经解决了吗?如果不是,请尝试使用reaction代替observe

reaction(
  () => this.loggedIn,
  loggedIn => loggedIn && this.getUserData()
)

关于javascript - 如何在Mobx商店中产生 react ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37838067/

10-09 22:33