【发布时间】: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