我有一個從API返回一些數據的服務:運行的東西時,HTTP觀察到已訂閱
// ...
getMetadata() {
this.spinner.start();
return this.http.get('/api/metadata').finally(() => this.spinner.stop());
}
// ....
我想存儲觀察到的在我的部分我在使用的變量返回,以便隨後去:
// ...
this.metadata$ = this.api.getMetadata();
// ...
而且讓我們說我使用的是使用| async
我的模板此觀察的地方,但讓我們說這不會馬上發生。 發生的是,我的微調無論如何都立即顯示出來,即使訂閱完全沒有放置。
所以我的問題是,有沒有辦法定義一個observable,它會在第一次訂閱時調用函數,很像finally
運算符,但是當observable第一次(或每次)訂閱至?
提前致謝!
」訂閱根本沒有放在「..你的意思是它出錯或請求不去? –
不,我的意思是沒有人叫它'.subscribe',但還是根本沒有 – Amit
因爲如果我只是「請求」一個可觀察對象而沒有訂閱它,就顯示一個微調對象,對我來說沒有意義,即使沒有訂閱observable也沒有多大意義 – Amit