我正在使用AngularJS。加载文档后初始化ng-app
其中一项(技术)要求是从服务器获取“启用ng”的HTML内容,以响应点击事件,并通过JavaScript将其注入到<div ng-app>
中。
的问题是,新注入的HTML没有连线,如角穿过编译和链接只有阶段时,页面加载的第一次。
有没有办法手动触发它们?
我以错误的方式接近这个问题吗?有没有一种更习惯的方式来完成我所描述的?
感谢
我正在使用AngularJS。加载文档后初始化ng-app
其中一项(技术)要求是从服务器获取“启用ng”的HTML内容,以响应点击事件,并通过JavaScript将其注入到<div ng-app>
中。
的问题是,新注入的HTML没有连线,如角穿过编译和链接只有阶段时,页面加载的第一次。
有没有办法手动触发它们?
我以错误的方式接近这个问题吗?有没有一种更习惯的方式来完成我所描述的?
感谢
有多种方式注入动态内容到AngularJS的看法。注入动态内容的一种方法是使用ng-include
指令。它可以从哪里获取视图。 您可以将其与ng-if
结合使用,以实现单击时的加载视图。例如:
<span ng-if="clicked">
<div ng-include='pathToTheHtml'></div>
</span>
的clicked
变量将是假的第一,在点击按钮将其设置为true,这将触发ng-include
获取内容,并将其注入到HTML。
如果你想要更好的控制,那么你需要使用$ compile服务。需要注入DOM的html需要使用$ compile服务进行编译并链接到作用域。这可以在指令中完成。
element.append($compile(htmlFragment)(scope)
)