如何为许多templateUrl定义控制器

时间:2017-07-26 12:47:01

标签: angularjs routes

我正在使用像

这样的角度路线
$routeProvider

        .when('/problems/monthly/volume',{
                templateUrl: 'frivolousTerminalsPersentByMonth.htm',
                controller: 'mainController'

        })

依此类推。当我有很多templateUrl并且我只使用一个控制器时,是否有必要为所有这些控件定义controller: 'mainController'?如果没有,这一点我可以定义它。

4 个答案:

答案 0 :(得分:0)

我认为有必要编写具有相同控制器名称的多个路由

$routeProvider
        .when('/problems/monthly/volume',{
                templateUrl: 'frivolousTerminalsPersentByMonth.htm',
                controller: 'mainController'

        })
     .when('/problems/monthly/volume2',{
                templateUrl: 'frivolousTerminalsPersentByMonth2.htm',
                controller: 'mainController'

        }) .when('/problems/monthly/volume3',{
                templateUrl: 'frivolousTerminalsPersentByMonth3.htm',
                controller: 'mainController'

        })

等等

答案 1 :(得分:0)

如果您只使用一个控制器来获取更多页面,则可以将此控制器添加到HTML代码中。 例如

<div ng-controller="mainController">
...
</div>

然后将不同模板的视图插入div。

答案 2 :(得分:0)

如果您在index.html文件中提供了控制器名称,则无需在$ rootProvider中提及控制器名称。甚至不是单身。你可以这样写。

$routeProvider

    .when('/problems/monthly/volume',{
            templateUrl: 'frivolousTerminalsPersentByMonth.htm'

    })

    .when('/problems/monthly/volume1',{
            templateUrl: 'example.htm'

    })

   .when('/problems/monthly/volume2',{
            templateUrl: 'example2.htm'

    })

答案 3 :(得分:0)

HTML

<div ng-controller="mainController">
<ng-view></ng-view>
</div>

配置路由时无需提及控制器名称

$routeProvider
.when('/problems/monthly/volume',{
                templateUrl: 'frivolousTerminalsPersentByMonth.htm',
        })