2016-01-20 25 views
6

Nhìn vào những ưu điểm và nhược điểm của Mẫu định hướng so với Mẫu điều khiển mô hình trong Angular 2 (beta.0), tôi tự hỏi làm thế nào xác nhận hợp lệ có thể được gắn vào một trường nhập văn bản đơn giản bằng cách sử dụng Biểu mẫu điều khiển mẫu. Không có ví dụ (bên cạnh bắt buộc) có sẵn cho phương pháp này hoặc tôi không tìm thấy chúng.Mẫu điều khiển mẫu trong Angular 2

<form #f="ngForm"> 
    <label for="name">Name</label> 
    <input type="text" ngControl="name" [(ngModel)]="obj.name" #name="ngForm"> 
    <button type="button" (click)="save()">Save</button> 
</form> 

Là một chức năng ví dụ xác nhận:

validate(control:Control):ValidationResult { 
    if (control.value === 'Monkey') { 
     return { invalidName: true } 
    } 
} 

Chức năng xác nhận trên hoạt động sử dụng trong một mẫu Model Driven sử dụng FormBuilder. Làm thế nào điều này có thể được thực hiện bằng cách sử dụng phương pháp tiếp cận hướng mẫu?

Câu trả lời như "Không thể và sẽ không còn trong tương lai nữa". hoặc "Đó không phải là phương pháp hay nhất, hãy đi theo phương pháp Tiếp cận mô hình." cùng với một tranh cãi sẽ tốt hơn với tôi. (Tôi đã giả định rằng không có cách nào nhưng không tìm thấy bằng chứng nào trên web và tôi thích phương pháp Mô hình Thúc đẩy hơn.)

+1

Xem nếu điều này giúp: http://blog.ng-book.com/the-ultimate-guide-to-forms-in -angular-2/ – Langley

+1

có một cái nhìn ở đây ... http://stackoverflow.com/q/34350049/5043867 –

+0

Thật không may chỉ có những ví dụ sử dụng FormBuilder. Im tự hỏi nếu tôi có thể đính kèm một validator khi tôi sẽ xác định 'ngControl =" tên "' ngầm? –

Trả lời

2

Trong mẫu biểu mẫu bạn cần tạo chỉ thị cho trình xác thực tùy chỉnh và nối nó vào phần tử đầu vào như thuộc tính html (giống như cách bạn sẽ nối thêm thuộc tính required).

Bạn nên đọc bài viết này về cách tạo chỉ thị cho trình xác nhận tùy chỉnh: http://blog.thoughtram.io/angular/2016/03/14/custom-validators-in-angular-2.html

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