AngularJS:在$ compile之后我在$ rootscope上得到一个infdig错误

时间:2014-04-08 23:26:44

标签: angularjs compilation

我只是想在列表的末尾添加一个动态元素,但我希望Angular能够对该动态元素进行评估,以便在单击它时可以注册ng-click事件。这按预期工作,但当我第二次点击它时,我得到一个infdig错误。

这可能很重要,不确定,它附加的列表是一个链接列表,它们会转到应用程序中的不同页面(使用angularUI路由器)和那些"页面"在同一视图中,因此页面不会仅仅更改页面上的内容。所有这些"页面"使用相同的控制器和模板。

   feedbacklink = angular.element('<li><a ng-click="test()" id="reviewPageLink">Customer Feedback</a></li>');
   $('#section_2 ul').first().append(feedbacklink);
   $compile(feedbacklink)($scope);

ng-click触发器(简化为显示问题):

$scope.test = function () {
    alert('test');
};

在我看来,再次调用$ compile,但是当我在编译后立即放置console.log时,它似乎并不是这样,它只显示一次。有没有办法确保编译只运行一次,或者甚至不是问题?

0 个答案:

没有答案