我有一个模型具有名字和姓氏属性的人员列表。使用角度过滤器功能,我可以创建一个基本搜索过滤列表。但是,在它的基本形式下,用户无法同时搜索名字和姓氏以获得任何结果,因为角度一次只能查看一个属性。有没有办法创建“虚拟”属性来连接另外两个用于搜索的属性?
如果我解释得非常糟糕,我通常会尝试在这个片段中搜索“史蒂夫·乔布斯”:
var app = angular.module('app', []);
app.controller('myCtrl', function($scope) {
$scope.people = [
{first: 'John', last: 'Smith'},
{first: 'Jane', last: 'Doe'},
{first: 'Bill', last: 'Gates'},
{first: 'John', last: 'Krasinski'},
{first: 'Ada', last: 'Lovelace'},
{first: 'Brad', last: 'Pitt'},
{first: 'Steve', last: 'Jobs'},
{first: 'Bill', last: 'Clinton'},
{first: 'Britishname', last: 'Complicated'},
{first: 'Steve', last: 'Wozniak'}
];
});
<div ng-app="app" ng-controller="myCtrl">
<input type="text" ng-model="search" placeholder="Search...">
<ul>
<li ng-repeat="person in people | filter: search">
{{person.first}} {{person.last}}
</li>
</ul>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>