Tôi có một nhóm Formular Angular 2 được tạo động với nhiều trường nhập FormControl. Một số đầu vào là Ngày tháng, được lấy từ máy chủ dưới dạng dấu thời gian unix.Ống 2 ngày góc cạnh bên trong một đầu vào FormControl
gì tôi muốn làm là:
- để có thể dịch các dấu thời gian unix mẫu có thể đọc được con người, khi FormGroup của tôi được phổ biến, và cũng
- dịch nhân đại diện của ngày đến dấu thời gian unix khi biểu mẫu được gửi .
Phần 1 là hơi đơn giản, sử dụng ống ngày kiễu góc của như thế này:
<input class="form-control" [formControlName]="question.key"
[value]="this.form.controls[this.question.key].value | date:'dd/MM/yyyy'">
đâu this.form là một tham chiếu đến FormGroup và this.question là một lớp tùy chỉnh wrapper dựa trên các hướng dẫn chính thức hình thức về động:
https://angular.io/docs/ts/latest/cookbook/dynamic-form.html
Đang cố gắng để thay đổi đầu vào ngày như vậy sẽ không làm việc vì các đường ống liên tục sẽ cố gắng để thay đổi giá trị đầu vào, do đó làm cho đầu vào không sử dụng được nếu không ném đối số Không hợp lệ cho ngoại lệ 'DatePipe' của đường ống.
Để làm rõ, tôi điền vào biểu mẫu của mình bằng cách sử dụng FormGroup.patchValue()
api và gửi dữ liệu biểu mẫu bằng cách sử dụng FormGroup.getRawValue()
api.
Tôi đã cố gắng sử dụng thành phần bộ chọn ngày Angular 2, nhưng chúng tạo ra các biểu mẫu khổng lồ của tôi khá chậm, vì vậy tôi muốn làm điều đó mà không có bộ chọn ngày tùy chỉnh hoặc bất kỳ tiện ích con phụ thuộc nào của jQuery.
Xin cảm ơn trước.
Cảm ơn tôi sẽ thử phương pháp này và quay lại với bạn càng sớm càng tốt. – ktsangop
Rất tiếc, tôi mới nhận ra rằng tôi đã quên một phần quan trọng trong khai báo '@ Component'. Tôi sẽ chỉnh sửa càng sớm càng tốt. – n00dl3
changeCallback và touchCallback cần được khởi tạo tôi giả sử như thế này 'touchCallback: any =() => {};' Khác hơn thế, và sau rất nhiều lần đọc tôi nghĩ rằng tôi hiểu nó hoạt động như thế nào ngay bây giờ! Sẽ chấp nhận câu trả lời của bạn ngay, nếu tôi không có câu hỏi nào khác.Cảm ơn! – ktsangop