1

看起来我以某种方式在 AngularJS 指令编译中做了一个无限循环。
请帮我找出解决方法。

Plunker: http ://plnkr.co/edit/2mvvCGYYYahOcEnWON9k

在阅读代码之前不要按“运行” - 您的浏览器可能会停止响应。

指令代码:

    directive(
  'mlgPermissionCard', function() {
    return {
      templateUrl: 'mlgPermissionCard.html',
      restrict:    'AE',
      scope:       {
        branch: '=mlgPermissionCard'
      }
    };
  })

模板:

<div>
    <div class="pull-right"><span class="glyphicon glyphicon-cog"></span></div>
    <div>{{ branch.name }}</div>
    <div class="list-group">
        <div class="list-group-item" ng-repeat="child in branch.children">-->
            <div mlg-permission-card="child"></div>
        </div>
    </div>
</div>

更新
嵌套指令的工作代码,可能对某人有用:
https ://github.com/MLG/angular-mlg-permission-card

4

1 回答 1

5

我认为您遇到了一些 Angular 编译/链接问题,因为您在自身内部递归地使用该指令。

相反,如果您在发布链接功能中手动组装模板,它将起作用。

这是您的 Plunker 的工作分叉。 http://plnkr.co/edit/E5fycjLYzKw1KxRqv9uj

于 2013-09-18T15:58:37.753 回答