app.filter('score', function() { return function(data){ var result = ''; if(data < 500) return data; switch(data){ case 955: result = 'D';break; case 965: result = 'C';break; case 978: result = 'B';break; case 990: result = 'A';break; case 1955: result = '不合格';break; case 1965: result = '合格';break; case 2955: result = '不及格';break; case 2965: result = '及格';break; case 2978: result = '良好';break; case 2990: result = '优秀';break; } return result; } }) .filter('fullScore', function() { return function(data){ var result = ''; if(data < 500) return data; switch(data){ case 1000: result = 'A';break; case 2000: result = '合格';break; case 3000: result = '优秀';break; } return result; } }) .directive('passwordVerify', function() { return { require: "ngModel", scope: { passwordVerify: '=' }, link: function(scope, element, attrs, ctrl) { scope.$watch(function() { var combined; if (scope.passwordVerify || ctrl.$viewValue) { combined = scope.passwordVerify + '_' + ctrl.$viewValue; } return combined; }, function(value) { if (value) { ctrl.$parsers.unshift(function(viewValue) { var origin = scope.passwordVerify; if (origin !== viewValue) { ctrl.$setValidity("passwordVerify", false); return undefined; } else { ctrl.$setValidity("passwordVerify", true); return viewValue; } }); } }); } } })