问题描述
<p ng-include='’project_index.jsp’'>
project_index.jsp中:
<script type='text/javascript' ng-src=’{{generateURL('/scripts/tab.js')}}’></script>
生成的url是正确的,在浏览器中可以访问,但是我看过请求的记录,这个js没有被加载。所以js中的内容也无法执行。请问我的做法的问题在哪儿?感谢回答~
问题解答
回答1:在stack上找到的。亲测有用。
(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 s = document.createElement('script'); s.type = 'text/javascript'; var src = elem.attr(’src’); if(src!==undefined) { s.src = src; } else { var code = elem.text(); s.text = code; } document.head.appendChild(s); elem.remove(); } }};});}(angular));
讲上述代码写成一个js文件,然后将此module ngLoadScript注入到你当前的应用中,然后在<script>标签中使用type='text/javascript-lazy'即可。This angular module have been created by @subudeepak(https://github.com/subudeepak) based on the code posted by @endorama (https://github.com/endorama) * (based upon the code * posted by @olostan (https://github.com/olostan) )

