【问题标题】:Can i make observable variable with Mobx store?我可以使用 Mobx 商店制作可观察变量吗?
【发布时间】:2020-12-15 23:37:59
【问题描述】:

初始化商店时,我有一个变量,用于创建新的子商店。当此子存储重新初始化时,观察者组件不会重新呈现更改。

例子

class OrderStore {
   price: PriceStore; // not observable
   
   @action.bound
   async fetch(){
      const response = await fetchOrder();
      this.price = new PriceStore(response.price);
   }
  
   @action.bound
   registerRefreshOrder(){
      setInterval(()=>{
         this.fetch();
      }, 10000);
   }
}


class PriceStore{
   @observable amount:number;

   constructor(priceResponse:{amount:number}){
       this.amount = priceResponse.amount;
   }
}

因此,虽然 price 变量不可观察,但观察者组件没有更新,然后 PriceStore.amount 发生变化。

对还是错?我应该初始化存储一次还是可以重新初始化?当我创建可观察的 store 实例时,它使所有字段或该对象的唯一链接都可观察?

【问题讨论】:

    标签: javascript reactjs mobx mobx-react


    【解决方案1】:

    看起来我找到了解决方案。需要使用 @observable.ref 作为可观察的存储实例

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多