AngularJS加载在单独文件中的控制器中

时间:2014-06-10 09:06:30

标签: angularjs angularjs-scope angularjs-routing angularjs-controller

app.config(function($routeProvider) {
        $routeProvider

            // route for the home page
            .when('/demo', {
                templateUrl : 'assets/pages/home.html'
            })

            // route for the sport page
            .when('/sport', {
                templateUrl : 'assets/pages/sport/home.html',
                controller  : 'sportController'
            });

            // route for the sport page
            .when('/television', {
                templateUrl : 'assets/pages/television/home.html',
                controller  : 'televisionController'
            });
});

我在名为sportController的文件中有SportCtrl.jstelevisionController TvCtrl.js,我在使用路由时如何将其加载到我的视图中?

2 个答案:

答案 0 :(得分:2)

您应该在app命名空间中正确添加控制器,Angular会自行完成所有操作。

例如,项目的工作结构:

  1. 加载Angular,依赖项。
  2. 加载应用程序初始化程序,配置。
  3. 加载控制器,指令,服务,过滤器等其他内容。
  4. 控制器代码示例:

    app.controller('sportController', ['$scope', function($scope){
    
    }])
    

    BTW,对于Angular文件名,没有任何意义。

答案 1 :(得分:2)

您正在尝试延迟加载javascript文件。这不是Angular功能,您有3个解决方案:

  • 使用requireJs即时加载文件。
  • 在html中包含所有javascript文件
  • 仅在一个文件中连接所有javascript文件。

我不想使用requireJS来阻止一个包含和配置: - )