2014-10-18 15 views
7

Tôi đã nhìn vào tài liệu kiễu góc ở đây: https://docs.angularjs.org/guide/forms#custom-validation

Tôi đang cố gắng để tạo ra validator lĩnh vực đầu vào của riêng tôi sử dụng một chỉ thị tùy chỉnh. Tôi đã tạo một chỉ thị mà có vẻ giống với một từ liên kết ở trên, chỉ tùy chỉnh với chức năng xác nhận của riêng tôi (6 chữ số mật khẩu):

app.directive('password', function() { 
    return { 
     require: 'ngModel', 
     link: function(scope, element, attrs, ctrl) { 
      ctrl.$validators.password = function (modelValue, viewValue) { 
       if (/^[0-9]{6}$/.test(viewValue)) { 
        return true; 
       } 

       return false; 
      }; 
     } 
    }; 
}); 

Và khi tôi chạy nó, tôi nhận được lỗi này:

Error: ctrl.$validators is undefined 

Tôi thiếu gì ở đây?

+0

Bạn có sử dụng Góc nghiêng 1.3 không? – zeroflagL

+0

1.2.26, hiện là phiên bản ổn định mới nhất. – morgoth84

+1

Sau đó, ['$ validators'] (https://code.angularjs.org/1.2.25/docs/api/ng/type/ngModel.NgModelController) chưa tồn tại. – Blackhole

Trả lời

14

$validators chỉ tồn tại kể từ phiên bản 1.3. Trái với bình luận của bạn, phiên bản ổn định mới nhất là 1.3.0.

+0

Tại sao Google không lưu trữ nó? oO https://developers.google.com/speed/libraries/devguide#angularjs – morgoth84

+2

[Google lưu trữ nó] (https://ajax.googleapis.com/ajax/libs/angularjs/1.3.0/angular. js). – Blackhole

+1

@Johannes 'Hôm nay, sau tám tháng làm việc, hơn hai nghìn cam kết, mười chín phiên bản beta và sáu ứng viên phát hành, cuối cùng chúng tôi đã phát hành AngularJS 1.3.0 superluminal-nudge' - ngày 14 tháng 10 – zeroflagL

Các vấn đề liên quan