名前のユニークな値だけを印刷しようとしていますが、できません。AngularJS ng-repeatユニークは機能していません
htmlコード:
<div ng-controller="MyCtrl">
<div><input type="text" ng-model="nameFilter" placeholder="Search..." /></div>
<p ng-repeat="contact in contacts | orderBy: 'customer.name'| unique:'customer.name'">{{ contact.customer.name }}</p>
</div>
JSコード:
var myApp = angular.module('myApp',[]);
function MyCtrl($scope) {
$scope.nameFilter = '';
$scope.contacts = [
{ id:1, customer: { name: 'foo', id: 10 } },
{ id:2, customer: { name: 'bar', id: 20 } },
{ id:3, customer: { name: 'foo', id: 10 } },
{ id:4, customer: { name: 'bar', id: 20 } },
{ id:5, customer: { name: 'baz', id: 30 } },
{ id:5, customer: { name: 'tar', id: 30 } },
{ id:5, customer: { name: 'got', id: 30 } },
{ id:5, customer: { name: 'man', id: 30 } },
{ id:5, customer: { name: 'baz', id: 30 } },
];
}
jsfiddleはここにある:http://jsfiddle.net/nvarun123/0tgL7u6e/73/
私はNGリピートからユニーク削除する場合、このコードが機能しています。
によってあなたのコードは 'unique'カスタムフィルタが不足しています。これは組み込みのフィルタの1つではないので、あなた自身で書き込む必要があります。 –
angularjsに固有のフィルタが既に定義されていると考えられます – Varun
私は恐れられていません、[これらは組み込みフィルタです](https://docs.angularjs.org/api/ng/filter) –