是否可以在$ routeProvider声明中访问$ routeParams对象?

时间:2014-01-12 18:05:21

标签: angularjs

在以下代码中:

phonecatApp.config(['$routeProvider',
  function($routeProvider) {
    $routeProvider.
      when('/phones', {
        templateUrl: 'partials/phone-list.html',
        controller: 'PhoneListCtrl'
      }).
      when('/phones/:phoneId', {
        templateUrl: 'partials/phone-detail.html',
        controller: 'PhoneDetailCtrl'
      }).
      otherwise({
        redirectTo: '/phones'
      });
  }]);

是否有可能以某种方式访问​​templateURL中的'phoneId'值,例如像这样的东西(我知道它不起作用,但它是为了解释我在问什么):

      when('/phones/:phoneId', {
        templateUrl: 'partials/' + $routeParams.phoneId + '.html',
        controller: 'PhoneDetailCtrl'
      }).

目的是加载以phoneId命名的HTML文件。

1 个答案:

答案 0 :(得分:6)

.when('/phones/:phoneId', {
    controller: 'PhoneDetailCtrl'
    templateUrl: function (params) {
        return 'partials/' + params.phoneId + '.html';
    }
})