【发布时间】:2019-04-25 06:24:03
【问题描述】:
如何在另一个页面上反映 observable 的变化。
我有两个页面,Page1 和 Page2 订阅了同一个 Observable。
在Page1中,我在ionViewDidLoad()上订阅了它
ionViewDidLoad() {
this.basket.getBasket().subscribe(res => {
this.basketDraft = res;
});
}
在 Page2 中,我进行了新的网络调用,它将更新购物篮。 但是当我回到 Page1 时,订阅的块不会被调用,视图也不会更新。页面不应该在观察数据时更新吗?
Basket.ts
constructor(){
//create an observable
this.basketObservable = Observable.create(observer => {
this._basketObserver = observer;
});
}
//return the observables
getBasket() {
return this.basketObservable;
}
//publish to all subscribers
update(_basketDraft:any){
this._basketObserver.next(_basketDraft)
}
如何确保 Page2 中的更改也会更新 Page1?
【问题讨论】:
-
答案不能解决你的问题吗?
-
行得通。谢谢!
标签: angular ionic-framework ionic2 rxjs ionic3