Я использую всплывающее окно angular-ui-datepicker, и я пытаюсь сохранить сохраненное значение даты как строку только с датой. M/d/yyyy
Persist Angular UI Bootstrap Datepicker как строка для API
ввода после выбора даты правильно 5/11/2015
, но значение, сохраненное является Date
Mon May 11 2015 00:00:00 GMT-0400 (Eastern Daylight Time) 12:00AM
Есть ли способ, чтобы всегда хранить значение в качестве даты string
и не как Date
объекта?
<p class="input-group">
<input type="text" datepicker-popup="M/d/yyyy" ng-model="event.date"
is-open="datePickers['date']" class="form-control" />
<span class="input-group-btn">
<button type="button" class="btn btn-default"
ng-click="toggleDatepicker('date', $event)">
<i class="fa fa-calendar"></i>
</button>
</span>
</p>
В вышеприведенном случае мне нужно данные, чтобы всегда быть строка даты, например:
{
date: '5/11/2015'
}
и не
{
date: `Mon May 11 2015 00:00:00 GMT-0400 (Eastern Daylight Time) 12:00AM`
}
Я бы сделал пользовательскую директиву и воспользовался форматированием ngModel $, чтобы установить $ modelValue равным $ viewValue, но не делать $ render. Не проверено, но это то, что я попробую. См. Этот вопрос и ответ: http://stackoverflow.com/questions/27491300/set-modelvalue-without-changing-viewvalue – jme11
Хм, мне нужно больше исследовать угловые директивы, чтобы добиться этого. Любые примеры директивы, которая управляет моделью, не влияя на ее рендеринг? – hunter
Задать вопрос в моем отредактированном комментарии ... – jme11