Angular $ compile指令不断重复

时间:2016-02-24 22:28:59

标签: angularjs angularjs-directive

为什么这会一直重复?我得到一个" RangeError:超出最大调用堆栈大小" chrome中的错误。

app.controller('my_cont',function($scope,$compile){
     container.html('<todo></todo>')
     $compile(container)($scope);
})
app.directive('todo',function($compile){
     return{
          template:'<ul><li>Blah</li><li>Blah</li></ul>',
     }
})

1 个答案:

答案 0 :(得分:0)

我之前遇到过这个问题,虽然不像你在这里遇到的那样。在控制器初始化上调用$ compile就像你在这里一样,将编译指令,因为指令初始化一个控制器并再次编译,你将基本上有无限嵌套的控制器。只需将您的元素指令放入HTML中,然后让Angular为您编译它。