2017-09-19 11 views
0

フォームを保存するたびにこのエラーが発生します。 Datepicker: value not recognized as a date object by DateAdapter. at MdDatepickerInput.set [as value]Datepicker:DateAdapterで日付オブジェクトとして認識されない値

これは入力日付ピッカーです。

<md-input-container> 
     <input mdInput 
       (dateChange)="saveForm()" 
       placeholder="Event Date" 
       [mdDatepicker]="eventDatePicker" 
       formControlName="eventDate" 
       [(ngModel)]="editingFundraiser.eventDate"/> 
     <md-datepicker-toggle mdSuffix [for]="eventDatePicker"></md-datepicker-toggle> 
     <md-datepicker #eventDatePicker></md-datepicker> 
    </md-input-container> 

これは、TS内のフォームは、これは私が複数の記事を読んで、私はカスタムを作成しようとしましたフォーム

export class MyForm 
    eventDate: any; 
} 

ためのモデルである

private initForm() { 
    this.myForm = this.fb.group({ 
     eventDate: new FormControl(this.editingForm.eventDate, Validators.required), 
    }); 
} 

ファイルであります日付アダプタは役に立たない。誰も私にこの問題を助けることができますか?

+0

で保存する機能を走りましたか?これは、日付オブジェクトです –

+0

私は、サーバーから日付オブジェクトを受け取ります。 @([ngModel])は@PankajParkarの問題を引き起こしているようですが、値を保存するために必要なので削除できません。 – Rafael

+0

@Rafael私はあなたがすでにこの問題を解決したことを知っていますが、あなたは 'eventDate' Dateオブジェクトですか?あなたのAPIに問題がある場合は、おそらくISO8601文字列です。これらはおそらく次のリリースで直接サポートされるでしょう(https://github.com/angular/material2/pull/7091)。 –

答えて

0

問題を解決するための新しい機能を作成しました。

</md-input-container>   
    <input mdInput 
      (dateChange)="saveDate($event)" 
      placeholder="Event Date" 
      [mdDatepicker]="eventDatePicker" 
      formControlName="eventDate"/> 
    <md-datepicker-toggle mdSuffix [for]="eventDatePicker"></md-datepicker-toggle> 
    <md-datepicker #eventDatePicker></md-datepicker> 
</md-input-container> 

私は、この関数にevent.valueに渡され、サーバーから取得しているもの値エンド

saveDate(event) { 
    this.editingFundraiser.eventDate = new Date(event.value); 
    this.saveForm(); 
} 
関連する問題