我刚创建了一个创建脚本文件的指令,并将该文件附加到html body元素。
但角度代码在该文件中不起作用。如果我编写的java脚本代码工作正常。
application.directive("dynamicScript",
function(service,$compile,$http,$rootScope){
return {
restrict:"E",
terminal: true,
scope:{
},
link:function(scope,element,attrs){
//scope.scriptname = attrs.name;
//service.setData(attrs.name);
//$http.get('generatescript').then(function(response) {
var scriptElem = angular.element(document.createElement('script'))
scriptElem.attr("src", "./js/SAMPLEScript.js")
scriptElem.attr("type", "text/javascript")
//element.html('').append( $compile( scriptElem.contents() )( $rootScope ) );
var ele = angular.element(document.getElementsByTagName("body")).append(scriptElem);
$compile(scriptElem.contents())(scope);
//});
}
}
});
SAMPLEScript.js包含无效的角度脚本代码。如何加载此文件当前工作。
答案 0 :(得分:0)
您可以创建指令,如Angular jar文档中所示。它有助于避免显式编译,也可以直接使用编译功能。 https://docs.angularjs.org/api/ng/service/ $编译