我是Angular.JS
的新用户,当我从ng-include
加载的内容请求它时,我正试图以动态方式加载控制器文件,我这样做是因为我正在构建的页面将会有多个控制器,我宁愿让初始页面加载速度快,因为它的大小,我不确定这样做,我想我会通过这样做实现它:
<script type="text/javascript" src="js/controllers/controllerFile.js"></script>
在内容中加载。
控制器文件就像这样
app.controller('parseQuery', function()
{
this.object = 'Enter query and parse.';
this.parse = function()
{
this.object = JSON.stringify(window.getParam(this.query), null, '\t');
};
this.getURL = function()
{
this.query = document.URL;
this.parse();
};
});
html
文件调用控制器ng-controller
,因为它应该工作。但是当加载内容时,javascript会返回错误Argument 'parseQuery' is not a
,所以没有任何作用,如何在应用程序已经引导后加载控制器文件?
答案 0 :(得分:1)
要延迟加载脚本,您需要查看AMD
或CommonJS
加载程序。这些库提供了按需加载脚本的功能。
Dan Wahlin有excellent blog post详细说明如何使用角度RequireJS
。
在1.3.14 AngularJS recieved support for CommonJS
中。这将是你最好的选择。