大家好我定义了以下路线:
appRouteProvider.when('/', {
templateUrl : '../../app/templates/home.html',
controller : 'IndexController'
}).when('/users/create', {
templateUrl : '../../app/templates/auth/register.html',
controller : 'RegisterController'
}).when('/users/login', {
templateUrl : '../../app/templates/auth/login.html',
controller : 'LoginController'
}).when('/posts/:id/:slug', {
templateUrl : '../../app/templates/posts/single.html',
controller : 'PostController',
resolve:{
sharedParamsData:function(sharedParams){
return sharedParams.promise;
},
}
}).when('/:city/:category/:services?', {
templateUrl : '../../app/templates/container.html',
controller : 'VenuesController',
resolve:{
sharedParamsData:function(sharedParams){
return sharedParams.promise;
},
}
}).otherwise( {
redirect: '/'
});
SharedParams
只是我正在通过的服务,但主要问题是两条路线:
/posts/:id/:slug
/:city/:category/:services?
如果我有一个/posts/16/this-is-a-post
形式的网址,则永远不会调用第一条路由,而是调用第二条路由。在第二条路线中,我可以理解:city
参数错误/posts
是一个参数。但我把它定义为一条独立的路线。尽管如此,为什么这条路线不被召唤。请在这里帮忙。