2017-02-17 44 views
0

我有一个角度js应用程序,它使用spring-boot构建的服务器发送和接收对象。该对象使用Java8 LocalDateTime字段无法填充角度的日期和时间细节

用于发送和接收日期和时间信息的角度js部分如下所示。

<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> 

发送时的日期,我使用的角度服务将其转换为所需的格式

function convertLocalDateToServer (date) { 
     if (date) { 
      return $filter('date')(date, 'yyyy-MM-dd HH:mm'); 
     } else { 
      return null; 
     } 
    } 

日期越来越成功保存与这两个日期和时间信息的数据库。

但是,从服务器获取对象并在UI中显示相同的问题。那个时间日期和时间字段都是空的。看来我无法将来自服务器的日期时间对象转换为可以通过angularjs显示的适当格式。

是从服务器时包详细信息被获取下面给出未来的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日期和时间字段没有得到填充

+0

尝试将它传递给新的日期对象。示例vm.dtValidTo = new Date(vm.dtValidTo); –

回答

0

从服务器获取数据后,您需要使用new Date()

试试这个

将其转换
vm.package = { 
    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 
} 
//now change it 
vm.package.dtValidFrom = new Date(vm.package.dtValidFrom); 
vm.package.dtValidTo = new Date(vm.package.dtValidTo); 
相关问题