我们正在使用Angular Kendo,并且在我们渲染的其中一个表(网格)中,标题是可过滤的。其中一列绑定到布尔字段,但我们希望显示适当的字符串而不是原始布尔值(即active vs true)。每行中实际属性的显示很容易通过条件(即{{ boolean-property ? "label 1" : "label 2"}}
)处理,但标签有点棘手。现在,这是过滤器的外观:
我的目标是用更合适的东西更新标签,我检查了文档,我能找到的最接近的东西是格式属性,我不确定它是如何用于布尔值的。
有没有人有关于如何为过滤器菜单设置标签的想法?
kendo提供可过滤的消息属性,我们可以使用它。
filterable:{
messages:{
IsFalse : 'label-1',
IsTrue : 'label-2'
}
}
在kendo网格选项中使用此选项。
目前我正在使用版本"@progress/kendo-angular-grid": "^3.12.1"
,我能够执行以下操作来更新BooleanFilterMenuComponent的标签
<kendo-grid
#grid
[data]="gridResult"
[pageSize]="gridState.take"
[skip]="gridState.skip"
[sort]="gridState.sort"
[sortable]="true"
[pageable]="true"
[filter]="gridState.filter"
scrollable="scrollable"
[selectable]="true"
filterable="menu"
[loading]="loading"
>
<kendo-grid-messages filterIsFalse="Active" filterIsTrue="Inactive"></kendo-grid-messages>
<!-- Some other column defs -->
<kendo-grid-column title="Status" field="isDeleted">
<ng-template kendoGridCellTemplate let-dataItem>
{{dataItem.isDeleted ? 'Inactive' : 'Active'}}
</ng-template>
<ng-template kendoGridFilterMenuTemplate let-filter let-column="column" let-filterService="filterService">
<kendo-grid-boolean-filter-menu [filter]="filter" [filterService]="filterService" [column]="column"></kendo-grid-boolean-filter-menu>
</ng-template>
</kendo-grid-column>
</kendo-grid>
以下是CustomMessagesComponent的文档,其中包含几个其他选项https://www.telerik.com/kendo-angular-ui/components/grid/api/CustomMessagesComponent/