代码之家  ›  专栏  ›  技术社区  ›  JP Guevara

angularjs如何根据index.html中的路线设置<script src=“controller”>

  •  4
  • JP Guevara  · 技术社区  · 11 年前

    我一直在开发angular.js应用程序,该应用程序正在与许多控制器一起发展, 所有文件都包含在index.html文件中,即使当前视图没有使用其中一个文件,这也适用于提供者和其他模块。

    如何在index.html中只调用取决于路由所需的控制器?

    我有一个index.html文件,其中包含许多脚本标记:

    <script src="controller1.js"></script>
    <script src="controller2.js"></script>
    <script src="controller3.js"></script>
    

    更新: 对问题+答案的更好解释。 http://weblogs.asp.net/dwahlin/archive/2013/05/22/dynamically-loading-controllers-and-views-with-angularjs-and-requirejs.aspx

    2 回复  |  直到 11 年前
        1
  •  1
  •   mortalapeman    11 年前

    您正在寻找的是异步模块和一个可以从服务器中提取它们的加载程序。 RequireJS 是第一个浮现在脑海中的。可以找到一个种子项目,其中包含如何将RequireJS和AngularJS结合的示例 here .

        2
  •  0
  •   bingjie2680    11 年前

    你应该让angular根据路线或url为你处理它。你最好的选择是查看routeProvider,文档是 here .

    用法如下所示:

    $routeProvider.when('/Book/:bookId/ch/:chapterId', {
        templateUrl: 'chapter.html',
        controller: ChapterCntl
    });
    

    另一种选择是使用Ui路由器,它是routeprovider的扩展。这是 project page .