如何使用自定义角度指令加载脚本
How to load a script using custom angular directive?
我正在尝试在我的自定义角度指令中加载脚本。现在,它只是在 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 中,那么它会按预期工作。如何使用自定义角度指令注入脚本?
这里似乎有点不对劲,但如果你真的想这样做,你可以将脚本标签附加到指令的元素中:
app.directive('loadDirective', function() {
return {
restrict: 'E',
link: function($scope, $el) {
var script = document.createElement('script');
script.src = '//cdnjs.cloudflare.com/ajax/libs/emojione/1.3.0/lib/js/emojione.min.js'
$el.append(script);
}
}
});
普伦克
相关文章:
- 指令加载真的很长,检查加载时间的方法
- AngularJs|Don'在成功加载所有指令htmls之前,不显示页面
- 由于$compile,Javascript(Angular)嵌套指令加载了两次
- 在Angular JS中POST后重新加载指令方法
- 如何在控制器中加载指令
- 在指令内加载后访问子元素图像
- 在指令之后加载的角度ng-init函数
- 在window.print()中加载为循环指令而编译时准备DOM失败
- 在ui路由器中以Webpack块的形式懒惰地加载Angular指令
- 创建自定义指令时未加载templateUrl
- AngularJS没有't解析指令中动态加载的数据
- 在ng视图加载或指令加载后运行javascript
- Highcharts数据将不会使用角度指令加载
- 如何使用自定义角度指令加载脚本
- 角度指令加载顺序
- 角度指令加载顺序
- 从另一个指令加载一个指令
- Angularjs | ng-message在使用$compile从指令加载html时不显示错误信息
- 在第二次加载视图时,用Angular指令加载部分而不渲染
- Angular JS-点击按钮,从指令加载一个模板html