动态编译由javascript插入的角度控制器? [英] Compile angular controller inserted by javascript dynamically?

查看:73
本文介绍了动态编译由javascript插入的角度控制器?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用可动态创建html的应用程序.我们开始使用angular,因此现在我们尝试使用angular.element()创建html并在其中定义一个控制器.

Im working in an app that creates html dynamically. We started using angular so now we are trying to create html using angular.element() and defining a controller in it.

angular.element("<div ng-controller='myController'/>");

问题是,因为它是在页面渲染后创建的(例如,当用户单击某处时),所以插入的html不能与angular一起使用,就像普通的html一样.我该怎么解决?

The problem is, that as it is created after the page renders (when an user clicks somewhere, for example), the html inserted is not working with angular, is like plain html. How can I solve it?

推荐答案

我使用这种方式:

var template = angular.element(YOU_HTML_IN_STRING);
var linkFn = $compile(template);
var element = linkFn($scope);
angular.element(CSS_SELECTOR).html('').append(element); 

如果您无权使用$ compile.您可以在这里看看: 如何在Angularjs的指令外使用$ compile

If you don't have access to $compile. You can have a look here: how can we use $compile outside a directive in Angularjs

这篇关于动态编译由javascript插入的角度控制器?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆