AngularJS指令:我们不应该使用后缀“start”吗?

时间:2013-12-23 18:33:51

标签: angularjs angularjs-directive

这是一个错误还是某个地方的文档说不要在指令的名称中使用后缀“start”?只有'finish'指令才有效。

HTML:

<html ng-app="myApp">
...
<body>
  <h2>Angular doesn't like the suffix 'start'</h2>
  <div this-is-the-start="abc"></div>
  <div this-is-the-finish="abc"></div>
</body>
...
</html>

JS:

var myApp = angular.module('myApp',[]);

myApp.directive('thisIsTheFinish', function() {
  return {
    restrict: 'A',
    template: 'finish'
  }  
});

myApp.directive('thisIsTheStart', function() {
  return {
    restrict: 'A',
      template: 'start'
  }  
});

行动准则: http://plnkr.co/edit/SrNncw?p=preview

1 个答案:

答案 0 :(得分:1)

我发布了这个答案,所以你可以回答这个问题。

正如@calebboyd指出的那样,这被提升为an issue in GitHub并在关于突发变化的注释添加到“1.2.0rc1 spooky-giraffe (2013-08-13)”的发行说明中时关闭。这是Breaking Changes中$ compile下的最后一点:

  
      
  • 由于e46100f7,名称以“-start”或“-end”结尾的现有指令将停止工作。
  •   
     

此更改是启用多元素指令所必需的。最好的解决方法是重命名现有指令,这样它们就不会以这些后缀结束。