我正在开发一个应用程序,它异步地引入HTML并显示出来。但是HTML里面有一个角指令。问题是指令没有被编译。我怎么能强迫这种事发生呢?
HTML:
<div>
Outer html
<angular-directive></angular-directive>
</div>angularDirective的内容:
<div>Test Content</div>但这并不显示angularDiretive的内容,只显示标记。
发布于 2015-11-30 11:03:41
请看下面的示例http://www.benlesh.com/2013/08/angular-compile-how-it-works-how-to-use.html
我什么时候应该使用$compile? 说实话?几乎从来没有。非常罕见的是,您必须编译一些HTML并将其作为视图处理。通常,您只需使用已经存在的指令来执行您认为需要使用$compile的任何操作。但我想,在某些边缘情况下,您可能需要使用它。比如创建一个完全定制的中继器之类的。
但如果你真的需要,那就做这个
var html = '<h1>my custom template loaded from whatever location</h1>'
// insert html string into element
element.html(html);
// compile
$compile(element.contents())(scope);我只有一次$compile服务,我已经工作了两年多了.
发布于 2015-11-30 11:00:27
将$compile服务注入您的指令。并将html元素作为参数传递给$compile。它将编译html,并且它将在视图中可见。
https://stackoverflow.com/questions/33996927
复制相似问题