AngularJS - $ compile未在ng-click中定义

时间:2013-10-23 14:36:50

标签: angularjs angularjs-ng-click

我正在尝试以ng-click运行此命令:

formFieldTemplate='<element fieldvalue="' + $( "#"+name+"Div").attr('fieldvalue') + '" name="' + $( "#"+name+"Div").attr('name') +'[' + dynamic_count + ']" value="' + $( "#"+name+"Div").attr('value') + '" ' + 'fieldvisible="' + $("#"+name+"Div").attr('fieldvisible') + '" type="' + $( "#"+name+"Div").attr('type') + '" useredit="' + $( "#"+name+"Div").attr('useredit') + '"></element>'
$compile(formFieldTemplate)($scope); 
$( "#"+name+"Div").append(formFieldTemplate);

我收到此错误:

  

$ compile未定义

有人可以帮帮我吗?

谢谢

2 个答案:

答案 0 :(得分:0)

回答你的问题,你需要确保将$ compileProvider注入模块,然后提供给你的指令/控制器。这似乎是基于你提供的内容,你正在制定指令?这将是做这样的事情的最佳地点(恕我直言)。请参见angular api $compile

答案 1 :(得分:0)

如果您在指令中调用它,则必须传递 $ compile 参数,

示例:

app.directive('myDirective', function($compile) {

 // Your directive code


};