我有很多模板html页面,其中包含js代码。当我的 RouteProvider 加载此模板之一时,JS 不会执行。
我不想使用 eval。
我可以在外部 .js 文件中编写代码并使用 requireJS,但我不知道如何使用 requireJS 停用“未使用的”js 文件。
你能告诉我如何在加载的模板页面上执行 JS 代码吗?
在当前版本(1.0.4 和 1.1.2)中,AngularJS 将not执行通过以下方式指定的部分中包含的任何 JavaScript 代码templateUrl
(or template
).
目前,您最好的选择是预先预加载大部分代码。人们正在尝试 requireJS,并且在 SO 和邮件列表上有很多关于它的问题。但事实是,虽然可以为控制器和部分完成按需加载,但一般来说,按需加载并没有得到很好的支持(请参阅AngularJS 中的模块化是如何减轻的? https://stackoverflow.com/q/12645720/1418796了解更多相关信息)。在实践中,这可能不是问题,因为用 AngularJS 编写的代码往往非常非常简洁,因此预先加载内容不会对性能产生不利影响(相反,因为所有代码都在浏览器中,所以没有与按需加载相关的延迟)。
按需加载是 AngularJS 2.0 中正在开发的一项功能。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)