Angular - 如何从数据的多个属性(字段)中进行筛选(搜索)数据?
创始人
2024-10-14 20:30:25
0

在Angular中,可以使用filter()方法从数据的多个属性中筛选或搜索数据。

首先,在组件的HTML模板中,可以使用ngModel来绑定一个输入框,用于输入搜索关键字。例如:


接下来,在组件的Typescript代码中,定义一个过滤函数来对数据进行筛选。在这个例子中,假设有一个名为data的数组,每个元素都有name和age属性。可以使用Array的filter()方法来筛选数据,并根据name和age属性进行比较。例如:

data = [
  { name: 'John', age: 25 },
  { name: 'Bob', age: 30 },
  { name: 'Alice', age: 35 }
];

filteredData: any[];
searchKeyword: string;

filterData() {
  this.filteredData = this.data.filter(item =>
    item.name.toLowerCase().includes(this.searchKeyword.toLowerCase()) ||
    item.age.toString().includes(this.searchKeyword)
  );
}

在上述代码中,filterData()函数使用filter()方法对data数组进行筛选。使用toLowerCase()方法来忽略大小写,并使用includes()方法来判断name属性或age属性是否包含搜索关键字。

最后,在组件的HTML模板中,可以使用ngFor指令来循环渲染筛选后的结果。例如:

  • {{ item.name }} ({{ item.age }})

在上述代码中,通过*ngFor循环遍历filteredData数组,并显示每个元素的name和age属性。

完成以上步骤后,当输入框中的搜索关键字发生变化时,filterData()函数将会被触发,筛选数据并更新filteredData数组。

相关内容

热门资讯

透视线上!wepokerh5破... 透视线上!wepokerh5破解(透视)本来有挂(详细辅助分享教程)运辅助工具,进入游戏界面。进入辅...
透视科技!hhpoker德州有... 透视科技!hhpoker德州有挂吗(透视)真是真的是有挂(详细辅助微扑克教程);1、玩家可以在软件透...
透视脚本!如何下载wepoke... 透视脚本!如何下载wepoker安装包(透视)本来是有挂(详细辅助黑科技教程);1、许多玩家不知道辅...
透视挂!德普之星透视软件免费入... 透视挂!德普之星透视软件免费入口官网(透视)都是是真的有挂(详细辅助技巧教程);1、完成透视辅助安装...
透视有挂!wpk模拟器多开(透... 透视有挂!wpk模拟器多开(透视)竟然是有挂(详细辅助透牌教程);1、完成透视辅助安装,帮助玩家取得...
透视好牌!wepoker好友房... 透视好牌!wepoker好友房开挂(透视)总是真的是有挂(详细辅助2025新版技巧)1)辅助挂:进一...
透视游戏!聚星ai辅助工具收费... 透视游戏!聚星ai辅助工具收费多少(透视)果然有挂(详细辅助黑科技教程)1、超多福利:超高返利,海量...
透视美元局!hhpoker怎么... 透视美元局!hhpoker怎么开透视(透视)竟然是真的有挂(详细辅助攻略方法)1、hhpoker怎么...
透视数据!hhpoker透视脚... 透视数据!hhpoker透视脚本视频(透视)总是有挂(详细辅助实用技巧)一、hhpoker透视脚本视...
透视免费!hhpoker必备开... 透视免费!hhpoker必备开挂(透视)果然真的是有挂(详细辅助攻略方法)1、完成的残局,帮助玩家取...