1
ngx-Datatable(https://github.com/swimlane/ngx-datatable)にcellTemplatesを実装しようとしていますが、なぜ動作しないのかわかりません。角2 ngx-Datatableセルテンプレート
まず私の見解
<ngx-datatable [rows]="skifte?.utsade" [columnMode]="flex" [selectionType]="'single'" [columns]="columns" (select)='edit($event)'></ngx-datatable>
私はこのようなテンプレートクラスを持っています。
import { Component, TemplateRef, ViewChild } from '@angular/core';
@Component({
moduleId: module.id,
selector:'',
template:"
<template #checkbox let-row="row" let-value="value" let-i="index">
<md-checkbox checked="value === 'true'"></md-checkbox>
</template>"
})
export class CellTemplates{
@ViewChild('checkbox') public checkbox: TemplateRef<any>;
constructor(){
}
}
このようにしてみてください。しかし、その細胞のスタイルに変化はありません。ブール
カラムは 選択するためのチェックボックスコンポーネントを表示するかどうかを示し:
@Component({
moduleId: module.id,
selector: 'dv-utsade-table',
templateUrl: 'UtsadeTableComponent.html'
})
export class UtsadeTableComponent extends InsatsComponentBase {
columns : any[];
constructor(private dialogService: DialogService) {
super();
}
ngAfterViewInit(){
window.setTimeout(() =>
this.columns = [{ name: 'Körning', prop: 'korning' },
{ name: 'benamning' },
{ name: 'giva' },
{ name: 'areal' },
{ name: 'Utförd', prop: 'utford', cellTemplate: new CellTemplates().checkbox } //<----Here,
{ name: 'datum' },
{ name: 'Huvudgröda', prop: 'huvudgroda' },
{ name: 'Gödsel', prop: 'godsel.benamning' },
{ name: 'Giva', prop: 'godsel.giva' }
]
)
}
}
テンプレートクラスのインスタンスを作成できないという問題がありました(ビューはレンダリングされません) テンプレートコンポーネント全体で@ViewChildを使用して解決しました。 – argoo