2017-10-12 18 views
2

Ngx-datatableの詳細行をマニュアルに従って動作させようとしていますが、これまでのところ運はありません。Ngx-datatableの行の詳細

私はこの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

:あなたはおそらく何をしたいのか

ではなくgetHeight(...)機能の結果にバインドするのですか? –

+1

この遅い返事には申し訳ありません。私はそれが上にあるようにそれを使用していた。しかし問題は、未定義のメッセージも送信するということでした。だから私がしなければならなかったことは、データを並べ替えることでした。私はそれが助けて欲しい私に知らせていないと、私はより良い答えを出すことができるかどうかがわかります。 –

+0

データのソートはどういう意味ですか?新しいソリューションでコードを更新できますか? –

答えて

0

[rowHeight]="getHeight" 

を、あなたは実際には関数オブジェクトでrowHeightに結合されていますgetHeight。あなたはこの問題を解決する方法を見つけました

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