2017-10-12 121 views
2

我想根據手冊使Ngx數據表詳細行工作,但到目前爲止沒有運氣。Ngx數據錶行詳細信息

我創造了這個plunker:https://embed.plnkr.co/yQv0Gvy8E8k1bqRr5Pxx/基本上只是複製從泳道在線文檔http://swimlane.github.io/ngx-datatable/#row-details'

行詳細演示中,我想利用的rowHeight作爲手冊中提及的結合:

<ngx-datatable-row-detail [rowHeight]="getHeight" #myDetailRow (toggle)="onDetailToggle($event)"> 
    <ng-template let-row="row" ngx-datatable-row-detail-template> 
    <div><strong>Address</strong></div> 
    <div>{{row.address.city}}, {{row.address.state}}</div> 
    </ng-template> 
</ngx-datatable-row-detail> 

和TS:

getHeight(row: any, index: number): number { 
    return row.someHeight; 
} 

但是行仍然未定義!我錯過了什麼?

作爲替代方案,我只想從getHeight函數訪問我的原始行數組,但保持行未定義。

console.log(this.rows[index]); 

謝謝!

UPDATE - 修復

我所做的修復它很乾脆:

getHeight(row: any): number { 
    if(row) { 
    return row.someHeight; 
    } 
} 
+0

你找到一個方法來解決這個問題? –

+1

我很抱歉這個遲到的回覆。我正確地使用它,因爲它是以上。但問題是,它也發送了一些未定義的。所以我必須做的是對數據進行排序。我希望它有幫助。如果不讓我知道,我會看看我能否做出更好的回答。 –

+0

你是什麼意思排序數據?你能用新的解決方案更新你的代碼嗎? –

回答

0

,當你這樣做:

[rowHeight]="getHeight" 

你實際上是用函數對象綁定rowHeightgetHeight

你可能想要做的是將其綁定到結果getHeight(...)函數,而不是

[rowHeight]="getHeight(...)"