2016-06-29 64 views
27

我已經瀏覽了關於這個主題的JavaScript問題,這個問題是關於使用TypeScript的Angular2的具體問題。合併兩個對象數組與Angular 2和TypeScript?

我想要做的是將json對象連接到一個數組。

我的代碼看起來像這樣,

public results: []; 


public getResults(){ 
    this._service.get_search_results(this._slug, this._next).subscribe(
      data => { 
       this.results.concat(data.results); 
       this._next = data.next; 
      }, 
      err => { 
       console.log(err); 
      } 
     ); 
} 

我如何可以連接到data.resultsthis.results打字稿和角?

this._slugthis._next設置在課堂上。

謝謝。

回答

48

我認爲你應該寧可以下用途:

data => { 
    this.results = this.results.concat(data.results); 
    this._next = data.next; 
}, 

concatdoc

的concat()方法返回由數組的一個新的陣列上,它被稱爲與作爲參數提供的數組和/或值進行連接。

+0

不幸的是,這不適用於Uint8arrays :( –

0

您還可以使用ES6推薦形式:

data => { 
    this.results = [ 
    ...this.results, 
    data.results, 
    ]; 
    this._next = data.next; 
}, 

這工作,如果你第一次初始化數組(public results = [];);否則請用...this.results ? this.results : [],替換...this.results,

希望這會有幫助