2017-05-15 6 views
0

subscribeコールバックの結果の後にzvol_name_arrayにアクセスする方法は何ですか? Google Dev Toolsにthis.zvol_name_arrayが定義されておらず、vol_list['vol_name']に関連するデータがあることがわかりました。サブスクライブコールバック以外で変数値にアクセスする方法は?

public zvol_name_array: Array<String> = []; 
public zvol_object: Array<object> = []; 

    ngOnInit() { 
    function find_nested_zvol(zvol: any): String {...snip...} 
    this.rest.get(this.volume_resource_name , {}).subscribe((res) => { 
     for(let zvol_list of res.data) { 
     this.zvol_name_array.push(zvol_list['vol_name']); 
     } 
    }); 
+0

zvol_listの本によって上書きされるので

public zvol_name_array: Array<String> = []; public zvol_object: Array<object> = []; ngOnInit() { function find_nested_zvol(zvol: any): String {...snip...} let parentThis = this; this.rest.get(this.volume_resource_name , {}).subscribe((res) => { for(let zvol_list of res.data) { parentThis.zvol_name_array.push(zvol_list['vol_name']); } }); } 

(プッシュながら)値を返された文字列でなければなりません。今は文字列ですか?しかし、私は何の問題も見ません!それは期待どおりに動作するはずです! – M98

+0

関数 'find_nested_zvol'はどのように使用されていますか?再現可能な例を投稿してください。 – Saravana

答えて

0
にコードを変更し

:これは、親スコープが、これはスコープを購読

関連する問題