Angularjs fullDate 过滤器不工作

Angularjs fullDate filter not working

我在 html 中使用 fullDate 过滤器时遇到以下错误:

Error: [ngModel:nonassign] Expression 'publisherForm.dt | date:'fullDate'' is non-assignable. Element:

这是我的翡翠代码:

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 上搜索现有线程时,我发现以下线程帮助我解决了我的问题:

Using angularjs filter in input element How to format a date using ng-model? AngularJS get formatted date in ng-model

最终更改了以下代码行,它对我来说开始正常工作了:

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

如果有任何人可以提出更好的解决方案,总是欢迎。

谢谢