私は、複数のFormControl入力フィールドを持つ動的に生成されたAngular 2 FormGroupを持っています。入力の一部はDatesで、サーバーからunixタイムスタンプとしてフェッチされます。FormControl入力内の角2の日付パイプ
私は何をしたいのです:
- は、人間が読める形式にUNIXタイムスタンプを変換できるようにするには、 私FormGroupが移入され、そしてまた
- は、人間の 表現を変換するとき形式が のUnixタイムスタンプの日付。
パート1は、このように角度の日付パイプを使用し、ややシンプルです:
this.formをFormGroupへの参照であるとthis.questionは公式のチュートリアルに基づいてカスタムラッパークラスです<input class="form-control" [formControlName]="question.key"
[value]="this.form.controls[this.question.key].value | date:'dd/MM/yyyy'">
パイプは常にこのように、入力値を変換しようとするための方法は動作しません日付入力を変更しようとしてい
https://angular.io/docs/ts/latest/cookbook/dynamic-form.html
:動的なフォームについてpipe 'DatePipe'例外のInvalid引数をスローしないと入力を使用できなくなります。
明確にするため、FormGroup.patchValue()
apiを使用してフォームに記入し、FormGroup.getRawValue()
apiを使用してフォームデータを送信してください。
私はAngular 2の日付ピッカーコンポーネントを使用しようとしましたが、私の巨大なフォームはかなり遅くなりました。カスタム日付ピッカーやjQueryに依存するウィジェットなしでやりたいと思います。
ありがとうございます。そのようなことを行うには
:
を、あなたはこのようにそれを使用することができるはずですありがとう、私はこのアプローチを試し、できるだけ早くあなたに戻ってきます。 – ktsangop
私は「@ Component」宣言で重要な部分を忘れてしまったことに気付きました。私はすぐに編集します。 – n00dl3
changeCallbackとtouchCallbackを初期化する必要があります。これは 'touchCallback:any =()=> {};'以外のものです。私は他の質問がない場合、すぐにあなたの答えを受け入れます。ありがとう! – ktsangop