我使用angular2进行信用卡表单验证。我找到了一个使用angular1的指令。但是我如何将此指令转换为角度2。
<ion-input type="text" card-number></ion-input>
angular.module('app').directive
( 'cardNumber'
, function(){
var directive =
{ require: 'ngModel'
, link: function(scope, elm, attrs, ctrl){
ctrl.$parsers.unshift(function(value){
scope.ccinfo.type =
(/^5[1-5]/.test(value)) ? "mastercard"
: (/^4/.test(value)) ? "visa"
: (/^3[47]/.test(value)) ? 'amex'
: (/^6011|65|64[4-9]|622(1(2[6-9]|[3-9]\d)|[2-8]\d{2}|9([01]\d|2[0-5]))/.test(value)) ? 'discover'
: undefined
ctrl.$setValidity('invalid',!!scope.ccinfo.type)
return value
})
}
}
return directive
}
)
答案 0 :(得分:0)
您可以创建自定义验证器
articleId
有关详情,请参阅http://blog.thoughtram.io/angular/2016/03/14/custom-validators-in-angular-2.html