2014-09-18 2 views
1

Я пытаюсь настроить подстановочную или динамическую маршрутизацию с шаблонами, например:AngularJS динамических маршрутов и шаблоны

/page/test разрешит шаблон в page/test.tpl.html

У меня есть следующий, и я попробовал некоторые вариации добавляются .tpl.html, но похоже, что это не так. Какие-либо предложения?

Спасибо!

angular.module('page', []).config(['$routeProvider', function ($routeProvider) { 

    $routeProvider.when('/page/:route', { 
     templateUrl: function($routeParams) { 
     return $routeParams; 
     }, 
     controller: 'PageController' 
    }); 

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

    }]); 

ответ

1

Вы можете получить доступ к динамическим значения маршрута по $ routeprovider.route. Попробуйте ниже,

$routeProvider.when('/page/:route', { 
      templateUrl: function($routeParams) { 
      return '/page/'+$routeParams.route+'.tpl.html'; 
      }, 
      controller: 'PageController' 
     }); 
+0

Это должно работает, но необходимо также модуль ngRoute, как сказал Дэвид Ли Санг в своем ответе. – enguerranws

+0

Это поможет, если вы можете дать некоторое объяснение вашему ответу. – Huangism

+0

Да, это работает отлично, у меня не было '.route' в моем предыдущем тесте. 'ngRoute' У меня есть еще один модуль, который наследует этот, так что все хорошо. – dzm

0

В определении модуля отсутствует «ngRoute». Я также проверил бы ваш index.html, если вы загрузите модуль углового маршрута.js.

angular.module('page', ['ngRoute']).config(['$routeProvider', function ($routeProvider) { 

См: ngRoute

Смежные вопросы