2016-04-12 2 views
1

Я использую Jhipster V3.
Я создал объект, и Jhipster создал все необходимые представления.
Мой клиент хочет, чтобы в диалоговом окне обновления этого объекта нажатие кнопки «Сохранить» не закрывало всплывающее окно.
Я заметил одну строку на эту функцию:Jeepster: отключить диалоговое окно close on submit

var onSaveSuccess = function (result) { 
    $scope.$emit('rhTechvalleyApp:consultantUpdate', result); 
    //$uibModalInstance.close(result); 
    vm.isSaving = false; 
}; 

В этом всплывающем окне у меня есть компонент Datepicker. Его значение становится пустым после завершения процесса сохранения. Это только проблема с отображением, но я не знаю, как избавиться от нее.

Если кто знает ...

Спасибо.

[UPDATE]

transformResponse: function (data) { 
        data = angular.fromJson(data); 
        data.dateEnregistrement = DateUtils.convertLocalDateFromServer(data.dateEnregistrement); 
        data.dateDernierPointDisponibilite = DateUtils.convertLocalDateFromServer(data.dateDernierPointDisponibilite); 
        data.dateDisponibilite = DateUtils.convertLocalDateFromServer(data.dateDisponibilite); 
        return data; 
       } 

<div class="input-group"> 
    <input id="field_dateEnregistrement" type="text" class="form-control" name="dateEnregistrement" uib-datepicker-popup="{{dateformat}}" ng-model="vm.consultant.dateEnregistrement" is-open="vm.datePickerOpenStatus.dateEnregistrement"/> 
    <span class="input-group-btn"> 
     <button type="button" class="btn btn-default" ng-click="vm.openCalendar('dateEnregistrement')"><i class="glyphicon glyphicon-calendar"></i></button> 
    </span> 
</div> 

ответ

1

Вам нужно добавить transformResponse к update функции углового обслуживания для вашей организации. Он должен быть таким же, как transformResponse для get.

Пример:

'update': { 
    method:'PUT', 
    transformResponse: function (data) { 
     data = angular.fromJson(data); 
     data.birthDate = DateUtils.convertLocalDateFromServer(data.birthDate); 
     return data; 
    } 
} 

Причина вам нужно сделать, это потому, что сервер возвращает строку, как 2016-04-12 дат. Это необходимо преобразовать в объект JavaScript Date, который является тем, что Angular ожидает для входов type="date". Если вы используете строку вместо объекта даты для ngModel на входе date, то Угловой будет вызывать ошибку и не заполнять поле. Вы можете использовать DateUtils.convertLocalDateFromServer для LocalDate и DateUtils.convertDateTimeFromServer для DateTime.

+0

Спасибо, я добавил тот же transformResponse, что и в методе GET (см. Обновление), даты хорошо установлены. Но в входе datetimepicker я все еще получаю пустое значение – user1260928

+0

Я забыл упомянуть, сделайте то же самое для метода save. – geraldhumphries

Смежные вопросы