AngularJS:如何在ng-include中创建角加载脚本?

前端之家收集整理的这篇文章主要介绍了AngularJS:如何在ng-include中创建角加载脚本?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
嘿,我正在建立一个有角度的网页。问题是有一些已经建立没有角,我必须包括他们

问题是这个。

我在main.html中有这样的东西:

  1. <ngInclude src="partial.html">
  2. </ngInclude>

和我的partial.html有这样的

  1. <h2> heading 1 <h2>
  2. <script type="text/javascript" src="static/js/partial.js">
  3. </script>

我的partial.js与angularjs无关。 nginclude工作,我可以看到html,但我看不到加载的javascript文件。我知道如何使用firebug / chrome-dev工具,但我甚至不能看到网络请求。我究竟做错了什么?

我knwo angular有一些特殊的含义脚本标签。我可以覆盖它吗?

接受的答案将不能从1.2.0-rc1( Github issue)。

这里是一个由endorama创建的快速修复:

  1. /*global angular */
  2. (function (ng) {
  3. 'use strict';
  4.  
  5. var app = ng.module('ngLoadScript',[]);
  6.  
  7. app.directive('script',function() {
  8. return {
  9. restrict: 'E',scope: false,link: function(scope,elem,attr) {
  10. if (attr.type === 'text/javascript-lazy') {
  11. var code = elem.text();
  12. var f = new Function(code);
  13. f();
  14. }
  15. }
  16. };
  17. });
  18.  
  19. }(angular));

只需添加文件,加载ngLoadScript模块作为应用程序依赖关系,并使用type =“text / javascript-lazy”作为脚本类型,您可以延迟加载partials:

  1. <script type="text/javascript-lazy">
  2. console.log("It works!");
  3. </script>

猜你在找的Angularjs相关文章