我遇到了一个我尝试使用的角度错误消息。我正在努力确保确认电子邮件的不区分大小写不适用于初始电子邮件地址。
在我的控制器中,我使用的是toLowerCase()
过滤器....除了控制台无法识别这个并且给我一条错误消息的事实。
我的前端代码是
input-md{ type: "email", "ng-model" => "vm.form.email_confirmation", required: true, 'must-match' => 'register_form["vm-form-email"]', 'match-case-insensitive' => true, 'ng-hide' => 'vm.form.validated_email', autocapitalize: 'off' }
和我的控制器,(最终问题出在哪里)
getMatchValue = ->
match = matchGetter($scope)
if (angular.isObject(match) and match.hasOwnProperty('$viewValue'))
match = match.$viewValue
match
$scope.$watch getMatchValue, ->
ctrl.$$parseAndValidate()
return
ctrl.$validators.mustMatch = ->
match = getMatchValue()
if $attrs.matchCaseInsensitive
ctrl.$viewValue.toLowerCase() is match.toLowerCase()
else
ctrl.$viewValue is match
return
如果有人可以看看这个,我将不胜感激!
答案 0 :(得分:1)
您应该确保您的对象不是undefined
,您可以使用angular.isDefined。
确保您的对象不是undefined
if (angular.isDefined(ctrl.$viewValue)){
//Your Code
}