0
私はspring-bootを使用して構築されたサーバーからオブジェクトを送受信する角度jsアプリケーションを持っています。オブジェクトはJava8のLocalDateTimeフィールドを使用します角度で日付と時刻の詳細を設定できません
日時情報を送受信するための角のjs部分は次のようになります。日付を送っている間、私は
function convertLocalDateToServer (date) {
if (date) {
return $filter('date')(date, 'yyyy-MM-dd HH:mm');
} else {
return null;
}
}
日付が正常に両方の日付と時刻の情報でデータベースに保存されます必要な形式に変換する角度サービスを使用しています
<div class="form-group">
<label class="control-label" for="field_dtValidFrom">Dt Valid From</label>
<div class="input-group">
<input id="field_dtValidFrom" type="datetime" class="form-control" name="dtValidFrom" uib-datepicker-popup="{{'yyyy-MM-dd HH:mm'}}" ng-model="vm.package.dtValidFrom" is-open="vm.datePickerOpenStatus.dtValidFrom"
/>
<span class="input-group-btn">
<button type="button" class="btn btn-default" ng-click="vm.openCalendar('dtValidFrom')"><i class="glyphicon glyphicon-calendar"></i></button>
</span>
</div>
<uib-timepicker ng-model="vm.package.dtValidFrom" hour-step="1" minute-step="30" show-meridian="true"></uib-timepicker>
</div>
。
しかし、サーバーからオブジェクトを取得してUIに表示するときに問題が発生します。その時、日付と時刻の両方のフィールドは空です。それは、サーバーから来るdatetimeオブジェクトをanglejsで表示できる適切な形式に変換できないようです。
パッケージの詳細がフェッチされたときに、サーバーから来ているJSONは、サーバーからデータを取得した後、あなたがする必要がある
{
id: 1,
dateOfBuying: "2017-02-17 12:08",
isValid: true,
dtValidFrom: "2017-02-17 00:00",
dtValidTo: "2017-04-30 00:00",
packageName: "Package 1",
packageId: 1,
personId: 1,
valid: true
}
以下の通りである。しかしangularjs日時フィールドが
新しい日付オブジェクトに渡してみます。例vm.dtValidTo =新しい日付(vm.dtValidTo); –