標題可能有點混亂。請看下面的代碼,在Ng-Repeat中搜索而不隱藏任何東西
<html>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.min.js"></script>
<body>
<div ng-app="myApp" ng-controller="namesCtrl">
<input type="text" ng-model="test"><br/>
<div ng-repeat="x in names | filter:test"> {{ x }}</div>
<script>
angular.module('myApp', []).controller('namesCtrl', function($scope) {
$scope.names = [
'Jani',
'Carl',
'Margareth',
'Hege',
'Joe',
'Gustav',
'Birgit',
'Mary',
'Kai'
];
});
</script>
</body>
</html>
用這些代碼我可以從scope.names中搜索一個名字。但問題是,我不想在搜索某個特定名稱時隱藏其他結果。這意味着,當我搜索「古斯塔夫」時,它應該在列表頂部而不隱藏其他名字。如果名稱是通過提供的關鍵字匹配進行排序的話,那將會更好。請幫忙。
,你能否告訴我們某種視覺爲你想在這裏做什麼?我的膝蓋反應是,這應該在控制器中處理或者可能使用指令。 –
想象一下,列表看起來像「貓,狗,鸚鵡」,當我搜索「狗」時,列表應該看起來像「狗,貓,鸚鵡」。 :D –
第二次重複下面的內容,過濾器將是'filter:!test'?只是一個想法,不是一個認真的解決方案我認爲有很多更好的方法,但我現在只是設計 –