Angular バージョン 2.4.5 を使用しています。
フォーマットなしで日付パイプを使用すると、年の後に二重のドットが作成されます。「yyyyMM.dd」の形式でパイプを使用するとします。正しい日付形式を提供します
{{startDate | date}}
=> 2017..07.07.{{startDate | date: 'yyyyMM.dd.'}}
⇒2017.07.07.
つまり、これを日付入力の値として設定することはできません。これは、フォーマットyyyy-MM-dd
を待機し、yyyy には入力要素でエラーを引き起こすプラスのドットが常に含まれているためです。これらのどちらも機能しません:
<input type="date" class="form-control" id="startDate" [ngModel]="currentItem.startDate | date: 'y-MM-dd'"
(ngModelChange)="currentItem.startDate = $event" name="startdate">
正しく変換された日付文字列を持つ新しいモデルを使用せずに、これを解決するにはどうすればよいですか?
2017-07-12 を更新: currentItem.startDate は Date() オブジェクトです。
let currentItem.startDate = new Date();
私が使用しようとしているロケールは 'hu-HU' ですが、2 つのドットはロケール プロバイダーなしで存在していました。その場合、フォーマット文字列のない日付パイプは、入力の正しいフォーマットを提供します。(yyyy-MM-dd)
{{currentItem.startDate | date}}