Angular RouteProvider,根据routeParams返回某个模板

时间:2016-02-28 09:29:45

标签: angularjs route-provider

我想实现类似的目标:

.when('/event/group/:gid', {
            if($routeParams.gid == 124){
                controller: 'ACtrl',
                templateUrl: '/event/A/foo.html'
            } else {
                controller: 'BCtrl',
                templateUrl: '/event/B/bar.html'
            }
        })

所以从字面上看,我想使用路由参数作为决定控制器和视图渲染的条件。任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:0)

这可以通过在templateUrl上返回一个函数来进行圆顶化。

.when('/event/group/:gid', {
    controller: 'ACtrl',
    templateUrl: function (params) {
        if(params.gid == 124){
           return '/event/A/foo.html'
        } else {
           return '/event/B/bar.html'
        }
     }
  });