4
我是Angular2的新手,我只是很想知道,如果我在_showNavBar
或showNavBarEmitter
上訂閱,兩者的作用相同(請參閱下面的代碼)。有什麼區別嗎?Observable vs asObservable()?
public _showNavBar: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(null);
public showNavBarEmitter: Observable<boolean> = this._showNavBar.asObservable();
謝謝,這是非常有用的,但我懷疑上面的代碼是在一個單獨的類是可注入的。如果我使_showNavBar私有,那麼我將無法從另一個組件(我導入此類的地方)發出值。 – vikas
您可以添加一個方法,如'addEvent(){this._showNavBar.next('someValue'); }'。但是,如果你不需要或不需要,那麼你可能根本不需要'asObservable'。我認爲總是以這種方式使用它是個好習慣。 –