Angular Kendo Gridで作業しており、サーバーデータをフォーマットで取得しています
1900-01-01T00:00:00
しかし、私はそれを標準的なフォーマットで表示したいのですが、どのように表示するかわかりません。グリッド列にformat = '{0:MM/dd/yyyy h:mm a}'を適用しましたが、効果はありません。これまでにどのようなデータ形式変換を行うか、コードのクライアント側で行う必要があります。つまり、サーバー日付をJavaScript形式に変換する必要があります。
<kendo-grid-column field="mydata.openDate" width="220" title="Open Date" filter="date"
format='{0:MM/dd/yyyy h:mm a}'>
</kendo-grid-column>
大規模なプロジェクトがあり、同じ形式を複数回使用する必要がある場合は、ディレクティブが適しています。
これはユーザビリティにとって非常に重要であり、使用するフォーマットを変更することにした場合(メンテナンス)
import { Directive, OnInit } from '@angular/core';
import { ColumnComponent } from '@progress/kendo-angular-grid';
@Directive({
selector: '[kendo-grid-column-date-format]'
})
export class KendoGridColumnDateFormatDirective implements OnInit {
constructor(private element: ColumnComponent) {
}
ngOnInit() {
this.element.format = "{0:dd.MM.yyyy}";
}
}
このように使えます
<kendo-grid-column field="yourField"
title="your title"
kendo-grid-column-date-format>
</kendo-grid-column>
非常に重要なディレクティブを登録することを忘れないでください