Angular 剑道UI角度全局搜索
只是一个简短的问题,我试着四处看看如何对剑道进行全局搜索。我所说的全局搜索是,剑道表外部有一个文本字段,然后我们在字段中键入任何内容,然后剑道表将加载并搜索数据 我已经使用剑道Angular Jquery完成了这项工作,但到目前为止,我还没有找到如何在剑道UI Angular上进行全局搜索的解决方案 如果有人已经这样做了,可以和我分享如何做剑道UI角度表的全局搜索 注意:我使用angular 4进行当前开发 非常感谢Angular 剑道UI角度全局搜索,angular,kendo-ui,kendo-grid,Angular,Kendo Ui,Kendo Grid,只是一个简短的问题,我试着四处看看如何对剑道进行全局搜索。我所说的全局搜索是,剑道表外部有一个文本字段,然后我们在字段中键入任何内容,然后剑道表将加载并搜索数据 我已经使用剑道Angular Jquery完成了这项工作,但到目前为止,我还没有找到如何在剑道UI Angular上进行全局搜索的解决方案 如果有人已经这样做了,可以和我分享如何做剑道UI角度表的全局搜索 注意:我使用angular 4进行当前开发 非常感谢 除了过滤行之外,我不知道还有其他类似的功能。 您可以创建自己的过滤器来实现这一
除了过滤行之外,我不知道还有其他类似的功能。 您可以创建自己的过滤器来实现这一点,因为毕竟,您只是将一个数据数组提供给kend grid 所以我要创建一个searchInput管道,它接受关键字参数
<kendo-grid [data]="gridData | searchInput: keyword">
您可以使用filter函数,并为其提供一个回调函数,该函数将参数输入与每个数据元素进行比较。注意:在这个例子中,我们只比较了两件事,你可以很容易地用几个成员来做
@Pipe({
name: 'searchData'
})
export class SearchData implements PipeTransform {
transform(data: DeviceType[], arg: string): any {
return data.filter(item => {
if (arg) {
const searchInput = arg.toLowerCase();
const deviceId = item.deviceId.toLowerCase();
const deviceType = item.deviceType .toLowerCase();
if(deviceId.includes(searchInput) || deviceType .includes(searchInput)){
return item;
}
}
});
}
}
创建输入表单并将其作为参数提供给
管道输入数据,并使用输入中输入的字符串为参数提供数据
@兰科维奇你好,谢谢你的回答。但你能给我看一些普朗克的工作实例吗?如果我不能实现你的想法,我很担心。@FaiZalDong,你没有共享任何代码,所以我不知道你是如何设置你的项目的。如果您在plunker或stackblitz上启动一个项目,我将演示如何集成管道。
@Pipe({
name: 'searchData'
})
export class SearchData implements PipeTransform {
transform(data: DeviceType[], arg: string): any {
return data.filter(item => {
if (arg) {
const searchInput = arg.toLowerCase();
const deviceId = item.deviceId.toLowerCase();
const deviceType = item.deviceType .toLowerCase();
if(deviceId.includes(searchInput) || deviceType .includes(searchInput)){
return item;
}
}
});