Я получаю следующую ошибку при использовании 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, но в консоли я получаю вышеупомянутую ошибку.
Любая идея, какова может быть возможная причина?
При поиске по существующим потокам в SO я нашел следующие темы, которые помогли мне решить мою проблему:
Использование фильтра angularjs во входном элементе Как отформатировать дату с помощью ng-модели? AngularJS получает форматированную дату в ng-модели
Наконец, сделали следующие строки кода, и он начал работать отлично для меня:
$scope.$watch('publisherForm.dt', function(newVal){ $scope.publisherForm.formattedDate = $filter('date')($scope.publisherForm.dt, 'fullDate'); });
Если есть кто-нибудь, кто может предложить лучшее решение, всегда приветствуется.
благодаря
ng-model
. это выражение должно преобразовываться в переменную области видимости. Нужно создать директиву для разбора $ viewModel