2017-04-22 52 views
2

我是Angular 2的新手。我有一個可觀察對象,名爲employees。如何從Observable中提取Employee數組?
(比方說,因爲我需要在特定的指數進行操作):在Angular 2中訪問對象數組Observable

employees:Observable<Employees[]>; 

而且我意欲

empArr:Employee[]; 
empArr = employees.somethingToConvertToArray(); // this is what I intended 

我已經與.subscribe或.MAP嘗試,但我想我會走錯方向。

回答

1

這不是它的工作原理。要從觀察者處獲取數據,請訂閱它

employees.subscribe(val => this.empArray = val); 
+0

謝謝您的回答。我試過,並把日誌裏面的箭頭功能,它的工作原理。然而this.empArray回到undefined之外的那個語句。 – imeluntuk

+0

這是預期的行爲。您必須移動回調中的所有代碼。你可以使用'val => {...}'來添加多個語句。 'val => ...'是一個傳遞給'subscribe(...)'的函數,並且只要有新的值可用,訂閱就會調用這個函數。該值之外的代碼在值變爲可用之前執行。 –

+2

就像Günther說的那樣,除此之外,我還以爲我只是拋出這一個,這就解釋了這種行爲:) http://stackoverflow.com/a/43055707/6294072 – Alex