嘿,我正在建立一个有角度的网页。问题是已经有一些东西没有角度了,我也必须包括它们
问题是这样的。
我的main.html中有这样的内容:
<ngInclude src="partial.html"> </ngInclude>
我的partial.html有这样的东西
<h2> heading 1 <h2> <script type="text/javascript" src="static/js/partial.js"> </script>
我的partial.js与angularjs无关。nginclude工作正常,我可以看到html,但根本看不到正在加载的javascript文件。我知道如何使用firebug / chrome-dev-tool,但是我什至看不到正在发出的网络请求。我究竟做错了什么?
我知道angular对脚本标签有一些特殊的含义。我可以覆盖它吗?
从1.2.0-rc1 +(Github问题)开始,可接受的答案将不起作用。
这是由endorama创建的快速修复:
/*global angular */ (function (ng) { 'use strict'; var app = ng.module('ngLoadScript', []); app.directive('script', function() { return { restrict: 'E', scope: false, link: function(scope, elem, attr) { if (attr.type === 'text/javascript-lazy') { var code = elem.text(); var f = new Function(code); f(); } } }; }); }(angular));
只需添加此文件,将ngLoadScript模块作为应用程序依赖项加载,并type="text/javascript- lazy"作为脚本的类型即可将其延迟加载到局部中:
ngLoadScript
type="text/javascript- lazy"
<script type="text/javascript-lazy"> console.log("It works!"); </script>