AngularJS升级打破了自定义指令

时间:2013-11-22 14:38:26

标签: angularjs

我刚从版本1.0.8升级到角度版本1.2.1,我的自定义指令已停止工作。该指令用于格式化通过ng-model绑定到文本输入的日期。这是指令和HTML,这里的plunker example适用于1.0.8但不适用于1.2.1:

      app.directive('uiDate', function ($filter, $parse) {
          return {
              require: 'ngModel',
              restrict: 'A',
              link: function (scope, element, attrs, ngModel) {
                  // THIS FUNCTION ISN'T FIRING IN 1.2.1
                  ngModel.$render = function () {
                      element.val('formatted date goes here');
                      //element.val(formatDate(ngModel.$modelValue));
                  };
              }
          };
      });

<input type="text" ng-model="crazyDate" ui-date />

如果有更好的方法将看似'/ Date(1380600000000)/'的Microsoft序列化日期格式化为与ng-model绑定的文本输入,我欢迎您对更好的解决方案的想法,但使用自定义指令是唯一可以将其视为新角色用户的方法。谢谢你的帮助!

安迪

1 个答案:

答案 0 :(得分:1)

我将你的plunkr更新为一个工作:

http://plnkr.co/edit/ZTWvnQkXOdVEM6j2ZKvT

另外,请看一下:

https://groups.google.com/forum/#!topic/angular/ZJi_t9aYC-o