angular 过滤器未按预期工作
angular filter not working as expected
在下面的代码中,它适用于两个过滤器。例如,如果我给
<li ng-repeat="list in arr | filter:DegreeName='masters'">
或
<li ng-repeat="list in arr | filter:DegreeName='certificate'">
我得到了意想不到的结果。可能是一些愚蠢的错误,但我无法弄清楚。
html
<div ng-controller="MyCtrl">
<li ng-repeat="list in arr | filter:DegreeName='masters'">
{{list.Name}}-{{list.DegreeName}} - {{list.DegreeCode}}{{list.URL}}
</li>
</div>
JS
var myApp = angular.module('myApp',[]);
//myApp.directive('myDirective', function() {});
//myApp.factory('myService', function() {});
function MyCtrl($scope) {
alert();
$scope.arr = [{"URL":"/online-degrees/certificate-nursing-education","NavKey":"certificate-nursing-education","Name":"Nursing Education","AOS":"Nursing","DegreeName":"certificate","DegreeCode":"CERT","LearningFormat":"Structured","DegreeTitle":"Post-Masters Certificate"}];
}
您应该以 JSON 格式指定要匹配的数据。
<li ng-repeat="list in arr | filter: {DegreeName: 'masters'}">
如果你想过滤那些与文本完全匹配的值,你可以将相等性检查值传递给true
。但正如我所见,解决方案的第一部分适合您的情况。
<li ng-repeat="list in arr | filter: {DegreeName: 'masters'}: true">
在下面的代码中,它适用于两个过滤器。例如,如果我给
<li ng-repeat="list in arr | filter:DegreeName='masters'">
或
<li ng-repeat="list in arr | filter:DegreeName='certificate'">
我得到了意想不到的结果。可能是一些愚蠢的错误,但我无法弄清楚。
html
<div ng-controller="MyCtrl">
<li ng-repeat="list in arr | filter:DegreeName='masters'">
{{list.Name}}-{{list.DegreeName}} - {{list.DegreeCode}}{{list.URL}}
</li>
</div>
JS
var myApp = angular.module('myApp',[]);
//myApp.directive('myDirective', function() {});
//myApp.factory('myService', function() {});
function MyCtrl($scope) {
alert();
$scope.arr = [{"URL":"/online-degrees/certificate-nursing-education","NavKey":"certificate-nursing-education","Name":"Nursing Education","AOS":"Nursing","DegreeName":"certificate","DegreeCode":"CERT","LearningFormat":"Structured","DegreeTitle":"Post-Masters Certificate"}];
}
您应该以 JSON 格式指定要匹配的数据。
<li ng-repeat="list in arr | filter: {DegreeName: 'masters'}">
如果你想过滤那些与文本完全匹配的值,你可以将相等性检查值传递给true
。但正如我所见,解决方案的第一部分适合您的情况。
<li ng-repeat="list in arr | filter: {DegreeName: 'masters'}: true">