我找不到注入和使用该$routeParams
服务的方法(我认为这是一个更好的解决方案),我尝试过这种想法,认为它可能会起作用:
angular.module('myApp', []).
config(function ($routeProvider, $routeParams) {
$routeProvider.when('/:primaryNav/:secondaryNav', {
templateUrl: 'resources/angular/templates/nav/'+$routeParams.primaryNav+'/'+$routeParams.secondaryNav+'.html'
});
});
产生此错误:
未知提供者:myApp中的$ routeParams
如果无法执行类似的操作,则可以将其更改templateUrl
为指向刚刚具有的部分HTML文件,ng- include
然后使用来在控制器中设置URL,$routeParam
如下所示:
angular.module('myApp', []).
config(function ($routeProvider) {
$routeProvider.when('/:primaryNav/:secondaryNav', {
templateUrl: 'resources/angular/templates/nav/urlRouter.html',
controller: 'RouteController'
});
});
function RouteController($scope, $routeParams) {
$scope.templateUrl = 'resources/angular/templates/nav/'+$routeParams.primaryNav+'/'+$routeParams.secondaryNav+'.html';
}
以此为你 urlRouter.html
<div ng-include src="templateUrl"></div>