如何清除服务并在订阅中检测到?

问题描述:

我有明确的方法:如何清除服务并在订阅中检测到?

clear() { 
    //this.customerSearchData = new ReplaySubject<Object>(1); 
    this.basketData = new ReplaySubject<Object>(1); 
    } 

在我的部分,我有这样的:

this.sharedData.getBasketData().subscribe((data)=>{ 
      if(data['basket']){ 
       this.basket = data['basket']; 
      }else{ 
       this.basket = {}; 
      } 
     }); 

但是,当我把这个明确的triggerd在明确的方法,但在我的组件认购不。任何建议?

+0

这不符合[mcve],但请注意,组件正在订阅*特定主题*,而不是一般'basketData'。如果你替换这个主题,你需要创建一个新的订阅(和'.unsubscribe'旧的,否则仍然有一个参考。 – jonrsharpe

清除使用this.basketData.next()后广播主题;

+0

它不会再触发 – None

+0

哦,抱歉,当你这样做时:这个。 basketData = new ReplaySubject (1);你的.subscribe是在不同的对象上,因此它不会收到回调 – Carsten

+0

所以我该如何解决这个问题? – None