因此,当AngularJS
文件加载时,我正在尝试加载我的应用中需要的所有index.html
脚本。
为此我已经制作了这段代码
<head>
...
AngularJS libaries loads
...
<script>
var main = {
root: [
'core.js'
]
};
var iterateScripts = function(folder, path){
for(var key in folder){
if(key.toLowerCase() === 'root'){
for(var i = 0; i < folder[key].length; i++){
var script = document.createElement('script');
script.type = 'text/javascript';
script.src = path + '/' + folder[key][i];
// console.info('script : '+ script.src)
document.getElementsByTagName('head')[0].appendChild(script);
}
} else {
var newPath = path + '/' + key;
// console.info('path : ', newPath, folder[key])
iterateScripts(folder[key], newPath);
}
}
};
iterateScripts(main, 'app/main');
console.info(document.getElementsByTagName('head')[0])
</script>
</head>
这可以加载文件,但我收到此错误
经过来回测试后,我得出的结论是问题是因为在AngularJS编译时页面加载,这会产生错误。
如果是这样,我怎样才能在加载body
标记之前以类似的方式加载我的角度应用?
答案 0 :(得分:1)
你必须自己引导角度,而不是使用ng-app。以下是相关文档:https://docs.angularjs.org/guide/bootstrap。
完成所有脚本加载后,您将运行一段与此类似的代码:
angular.element(document).ready(function() {
angular.bootstrap(document, ['myApp']);
});
这告诉角度它已准备好开始。