Angular 4アプリケーションでngx-bootstrap Datepickerを使用し、
私は通常、この方法で日付形式を指定できることを知っています:
_<input id="from" name="from"
bsDatepicker [(bsValue)]="myModel"
value="{{ myModel | date:'yyyy-MM-dd'}}">
_
しかし、今回はテンプレート駆動のAngularフォーム内にいるため、上の例ではmyModel
のような変数に入力はバインドされていませんが、形:
_<input id="from" name="from"
bsDatepicker ngModel>
_
この場合、どのように日付形式を指定できますか?
編集:これを実現する方法は、コンポーネント内に新しい変数newVar
を作成し、それを[(bsValue)]="newVar"
でバインドすることです。
_<input id="from" name="from"
bsDatepicker ngModel
[(bsValue)]="newVar"
value="{{ newVar | date:'yyyy-MM-dd' }}">
_
しかし、より良い解決策があるのだろうか。
[(bsValue)]
は常にbsDatepicker
で使用できます。入力フィールドかどうか
1つのフィールドのみの形式を変更する場合
[(bsValue)]="newVar" value="{{ newVar | date:'yyyy-MM-dd' }}"
は問題ありません
bsDatepicker
には入力フィールドとフォームが統合されています。これはあなたのために機能するはずです:
<input name="from" bsDatepicker [(ngModel)]="newVar">
configを使用して入力値の日付の形式をグローバルに変更できます
または[bsConfig]="{dateInputFormat: 'yyyy-MM-dd'}"
bsDatepicker
を持つ要素上
note:現在L
形式に問題(v1.9.2)があり、常にen-usロケールを使用します
日付範囲ピッカーを使用している場合は、dateInputFormatの代わりに[bsConfig]でrangeInputFormatを使用する必要があります。
この設定ファイルを使用してグローバルな日付形式を使用する方法について詳しく説明できますか?
上記で提供したgithubリンクを調べましたが、インポートファイルがたくさんあるため、プロジェクトでそれを使用する方法がわかりませんでした。現在、以下のインラインコードを使用して日付形式を変更しています。
bsDatepicker [(bsValue)]="newVar" value="{{ newVar | date:'yyyy-MM-dd' }}"
この日付形式「yyyy-MM-dd」を設定ファイルにグローバルに配置して、形式を明示的に言及することなくbsDatepickerの任意のフィールドに日付を印刷する方法はありますか?