gpt4 book ai didi

search - angularJS 搜索模型

转载 作者:行者123 更新时间:2023-12-04 05:26:04 27 4
gpt4 key购买 nike

我是 angularJS 的新手。我需要对 JSON 数据执行搜索。这是一个示例 JSON 结构

countries =   [
{
"country_name" : "India",
"stations" : [
{
"name": "Dream Factory"
}
]
},

{
"country_name" : "Indonesia",
"stations" : [
{
"name": "Drummer Factory"
},
{
"name": "Beats"
}
]
}
]

说我输入 Ind ,我需要匹配字符串的国家并返回 IndiaIndonesia同样在其他字段中,输入 Factory应该检索与字符串匹配的站名(这里是 Drummer FactoryDream Factory )。

实现这一目标的简单方法是什么?
是否有任何内置指令可以解决这个问题,或者我可以使用过滤器,如果是,请发布示例...

最佳答案

您可以使用名为“filter”的过滤器(是的,这有点令人困惑):http://docs.angularjs.org/api/ng.filter:filter

这是一个演示:http://jsfiddle.net/g/pXnRs/4/

HTML:

<div ng-controller="CountryController">
Filter: <input ng-model="nameFilter" />
<ul>
<li ng-repeat="country in countries | filter: nameFilter">
{{country | json}}
</li>
</ul>
</div>​

JS:
var app = angular.module('app', []);

app.controller('CountryController', function($scope){
$scope.nameFilter = '';
$scope.countries = [
{
"country_name" : "India",
"stations" : [
{
"name": "Dream Factory"
}
]
},
{
"country_name" : "Indonesia",
"stations" : [
{
"name": "Drummer Factory"
},
{
"name": "Beats"
}
]
}];
});

angular.bootstrap(document, ['app']);

如果您只需要站作为结果,您应该首先将 JSON 对象层次结构扁平化为一个站列表。

关于search - angularJS 搜索模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13135382/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com