2017-10-20 76 views
-1

我有這樣的:如何推入服務而不會丟失以前的數據?

items = new ReplaySubject<Object>(1); 

    setItems(obj){ 
    this.items.next(obj); 
    } 
    getItems(){ 
    return this.items.asObservable(); 
    } 

在組件我有這樣的:

this.sharedData.getItems().subscribe((data) => { 
      return; 
     }) 

問題是每當我使用setItems我失去了以前的數據。任何建議如何避免這種情況?我想要在數組中推入以前的數據。任何建議如何可以達到?

+0

使用實際的數組? – echonax

+0

你的意思是?如果我使用數組而不是服務,那麼當我通過組件時,將丟失數據 – None

回答

1

你可以在你的服務中定義一個公共數組(@Injectable class)。這將是一個單例,以便數據在整個應用程序的生命週期中保持不變。從服務注入的組件中,您可以將數據推入/檢索該數組。

相關問題