【发布时间】:2014-12-18 04:20:32
【问题描述】:
我正在尝试在我的自定义角度指令中加载脚本。现在,它只是在 DOM 中添加脚本标签,但没有加载它。
angular.module('myApp')
.directive('rjHeader', function () {
return {
restrict: 'E',
template : function(e,a){
return '<script type="text/javascript" charset="utf-8" src="https://my.web.com/path/' + a.locale + '/some.js" ></script>';
}
};
});
在html中
<div rj-Header locale="en_US"></div>
在浏览器中打开页面时,它会正确添加预期的脚本。
<script type="text/javascript" charset="utf-8" src="https://my.web.com/path/en_US/some.js" ></script>
但这实际上并没有加载这个 .js 文件。如果我简单地将这一行复制粘贴到我的 html 中,那么它会按预期工作。如何使用自定义角度指令注入脚本?
【问题讨论】:
-
试试github.com/ocombe/ocLazyLoad和bennadel.com/blog/…,你试过ng-include吗?
-
投了赞成票,因为恕我直言,指令能够在少数情况下(并非总是)注入脚本很有用。一种情况是独立的自打包指令。
标签: javascript angularjs