Javascript 如何在加载的内容上加载AngularJS控制器文件

Javascript 如何在加载的内容上加载AngularJS控制器文件,javascript,angularjs,Javascript,Angularjs,我不熟悉Angular.JS,当从ng include加载的内容请求控制器文件时,我尝试以友好方式加载控制器文件,我这样做是因为我正在构建的页面将有多个控制器,而且由于其大小,我宁愿快速加载初始页面,我不确定是否能做到这一点,我认为只要做到: <script type="text/javascript" src="js/controllers/controllerFile.js"></script> html文件使用ng controller调用控制器,因为它应该工作。

我不熟悉
Angular.JS
,当从
ng include
加载的内容请求控制器文件时,我尝试以友好方式加载控制器文件,我这样做是因为我正在构建的页面将有多个控制器,而且由于其大小,我宁愿快速加载初始页面,我不确定是否能做到这一点,我认为只要做到:

<script type="text/javascript" src="js/controllers/controllerFile.js"></script>

html
文件使用
ng controller
调用控制器,因为它应该工作。但是当加载内容时,javascript返回一个错误
参数'parseQuery'不是一个
,所以什么都不起作用,在应用程序已经启动后如何实现加载控制器文件?

要延迟加载脚本,您需要签出
AMD
CommonJS
加载程序。这些库提供了按需加载脚本的能力

Dan Wahlin详细介绍了如何将
RequireJS
与angular一起使用


在公园里。这将是您的最佳选择。

Angular在引导后不能延迟加载控制器(或服务,或任何其他Angular)。反正是现成的。您可以查看或等待Angular 2,它将支持延迟加载。@jlowcs所以我别无选择,只能在初始页面中加载所有控制器?我非常确定您的总代码大小比Angular.js本身小得多,必须加载Angular.js本身,所以这有什么意义?@Nothertus是的。尽管如此,尤其是在缩小和压缩的情况下,您的代码不应该太重。延迟加载通常是大型应用程序所必需的。可能重复
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();
    };
});