Angular 2/4:注入对象的数组字段在子控制器中清空

时间:2017-08-16 03:57:19

标签: javascript angular

编辑:我在某处某处“拼接”而不是“切片”,这就产生了问题。

var newArray = this.currentSearchHistoryResponse.searchHistoryList.slice(
startingResult, endingResult);
    this.searchHistories = newArray;

我有一个看起来像这样的课程:

export class SearchHistoryResponse {
  public uuid: string;
  public startTime:Date;
  public endTime:Date;
  public searchHistoryList:SearchHistory[];

  public getPageCount()
  {
    return Math.ceil(this.searchHistoryList.length / 45);
  }
}

我注意到当我将这个类的实例从父控制器传递到子控制器时,数组

public searchHistoryList:SearchHistory[];

是空的。

我的代码看起来像这样

ParentView.html

<div style="min-height: 350px">
<childcomponent class="footer-flex-container"
                    [currentPageNumber]="currentPageNumber"
                    [searchHistoryResponse]="currentSearchHistoryResponse">
 </childcomponent>
</div>

Child控制器上的代码如下所示:

  @Input()
  public set searchHistoryResponse(value: SearchHistoryResponse) {
     if(value)
     {
       console.log("SearchHistoryResponse uuid child controller " + value.uuid);
       console.log("Size of array in parent controller " + value.searchHistoryList.length);
       this._searchHistoryResponse = value;
       this.updateFooter();
     }
  }

可能发生什么事?为什么子类的数组字段是空的?

非常感谢任何帮助。

0 个答案:

没有答案