需要一些帮助来理解Angularjs $ compile

时间:2013-04-30 02:37:12

标签: angularjs angularjs-directive

如果你看一下这个小提琴http://jsfiddle.net/waylon999/peR9P/3/,你会看到我正在尝试做的事情。我正在尝试使用$ compile作为用另一个模板替换模板的方法。

我希望:

scope.compiledVal = $compile(scope.value)(scope);

编译

的内容
"<div>{{ name }}</div>"

使用随作用域传入的绑定名称,然后替换

中的compiledVal
<div>{{ compiledVal }}</div>

使用已编译的模板。但这并没有发生,输出只是

{{ compiledVal }}

如果我打开JSFiddle的控制台,我会看到错误: TypeError:将循环结构转换为JSON

有什么明显的我在这里做错了吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

所以在回答我的问题时,看起来我可以使用

var tmp = $compile(scope.value)(scope);
element.append(tmp); 

更新了小提琴http://jsfiddle.net/waylon999/peR9P/3/

但在Alex Osborn的评论之后需要重新评估...