Angularjs fullDate фильтр не работает

0

Я получаю следующую ошибку при использовании fullDate-фильтра внутри моего html:

Ошибка: [ngModel: nonassign] Выражение 'publisherForm.dt | date: 'fullDate' 'не присваивается. Элемент:

Вот мой нефритовый код:

datepicker.well.well-sm (ng-model = "publisherForm.dt", show-weeks = "false", min-date = "minDate")

input.form-control (type = "text", ng-model = "publisherForm.dt | date: 'fullDate'", readonly = '')

я пытаюсь показать выбранную дату с ui-datepicker пользователю в другом поле ввода. Поскольку я хочу показывать только дату, я использую фильтр fullDate, но в консоли я получаю вышеупомянутую ошибку.

Любая идея, какова может быть возможная причина?

  • 1
    не может использовать фильтры в ng-model . это выражение должно преобразовываться в переменную области видимости. Нужно создать директиву для разбора $ viewModel
  • 0
    И как именно я могу это сделать?
Показать ещё 2 комментария
Теги:
datepicker
uidatepicker
angular-ui-datepicker

1 ответ

0
Лучший ответ

При поиске по существующим потокам в SO я нашел следующие темы, которые помогли мне решить мою проблему:

Использование фильтра angularjs во входном элементе Как отформатировать дату с помощью ng-модели? AngularJS получает форматированную дату в ng-модели

Наконец, сделали следующие строки кода, и он начал работать отлично для меня:

$scope.$watch('publisherForm.dt', function(newVal){
  $scope.publisherForm.formattedDate = $filter('date')($scope.publisherForm.dt, 'fullDate');
});

Если есть кто-нибудь, кто может предложить лучшее решение, всегда приветствуется.

благодаря

Ещё вопросы

Сообщество Overcoder
Наверх
Меню