Javascript 在嵌套json中过滤数据
我的角度控制器正在跟踪- 如何过滤嵌套数据,如json的第一行-Javascript 在嵌套json中过滤数据,javascript,json,angularjs,Javascript,Json,Angularjs,我的角度控制器正在跟踪- 如何过滤嵌套数据,如json的第一行- <script> var myApp = angular.module('myApp', ['angular.filter']); function VersionFilterCtrl($scope) { $scope.limit=6; $scope.orders = [ { id:1, customer:[{ name: 'John1', id: 10 },{ name: 'J
<script>
var myApp = angular.module('myApp', ['angular.filter']);
function VersionFilterCtrl($scope) {
$scope.limit=6;
$scope.orders = [
{ id:1, customer:[{ name: 'John1', id: 10 },{ name: 'John2', id: 100 }] },
{ id:2, customer: { name: 'William', id: 20 } },
{ id:3, customer: { name: 'John', id: 10 } },
{ id:4, customer: { name: 'William', id: 20 } },
{ id:5, customer: { name: 'Clive', id: 30 } }
];
}
</script>
var myApp=angular.module('myApp',['angular.filter']);
函数VersionFilterCtrl($scope){
$scope.limit=6;
$scope.orders=[
{id:1,客户:[{name:'John1',id:10},{name:'John2',id:100}],
{id:2,客户:{name:'William',id:20},
{id:3,客户:{name:'John',id:10},
{id:4,客户:{name:'William',id:20},
{id:5,客户:{name:'Clive',id:30}
];
}
还有我的html
<div ng-app="myApp">
<div ng-controller="VersionFilterCtrl">
<input type='text' name='name' ng-model='search.customer.name'>
<input type='text' name='name' ng-model='search.customer.id'>
<li ng-repeat="order in orders| filterBy: ['customer.name']: search.customer.name| filterBy: ['customer.id']: search.customer.id">
{{order.id}}{{order.customer.name}}
</li>
</div>
</div>
{{order.id}{{order.customer.name}
您在如何设置搜索模型以匹配所筛选数据的结构(即
search.customer.name
和search.customer.id
)方面正确地处理了这一问题
您只需将搜索
对象应用为过滤器:
<li ng-repeat="order in orders | filter: search">
{{order.id}} | id: {{order.customer.id}} name: {{order.customer.name}}
</li>
{order.id}}id:{{order.customer.id}}名称:{{order.customer.name}
其他一些问题:
- 没有
(除非您自己创建)过滤器by
- 您的第一个订单记录有一系列客户-这是故意的吗?这就解决了那个问题