HTMLAngularjs过滤器:模型在儿童和flilter父在angularjs
<div ng-app="myApp" ng-controller="mainCtrl">
<div ng-controller="secondCtrl">
<p>Filtering input:</p>
<p><input type="text" ng-model="test"></p>
</div>
<ul>
<li ng-repeat="x in names | filter:test | orderBy:'country'">
{{ (x.name | uppercase) + ', ' + x.country }}
</li>
</ul>
</div>
JS:
<script>
var app = angular.module('myApp', []);
app.controller('mainCtrl', function($scope) {
$scope.names = [
{name:'Jani',country:'Norway'},
{name:'Hege',country:'Sweden'},
{name:'Kai',country:'Denmark'}
];
});
app.controller('secondCtrl', function($scope) {
});
</script>
总之此过滤器不能正常工作。
规则1:模型(测试)必须在第二个控制器中。规则2:数据和ng-repeat必须位于mainCtrl中。
谢谢。
这里是一个服务的实现,下面的约束这是正确的:
更新。谢谢@Amit。 –