我想在routing
中做一些Angular
,到目前为止我已经成功了。但是,我遇到了一个问题。
以下一行正常工作
when('/shops/:shopId/:shopName', {
但是,这条路线不起作用:
when('/shops/:shopId/:shopName/collections', {
当我导航到第二个时,我被抛到otherwise
路线。控制台中不显示任何错误。
我做错了什么?
按要求提供更多路由:
when('/shops/:shopId/:shopName', {
templateUrl: 'js/modules/shops/partials/shop.html',
controller: 'ShopController',
resolve: {
shop: ['ShopService', '$route', '$q', function(ShopService, $route, $q) {
var defer = $q.defer();
ShopService.getShop($route.current.params.shopId).success(function(data) {
defer.resolve(data);
});
return defer.promise;
}]
}
}).
when('/shops/:shopId/:shopName/collections', {
templateUrl: 'js/modules/collections/partials/collections-brand.html',
controller: 'CollectionsController',
resolve: {
collections: ['CollectionService', '$route', '$q', function(CollectionService, $route, $q) {
var defer = $q.defer();
CollectionService.getCollectionsByBrand($route.current.params.shopId).success(function(data) {
defer.resolve(data);
});
return defer.promise;
}]
}
}).
/* End */
otherwise({
redirectTo: '/'
});
答案 0 :(得分:2)
您使用的是html5Mode吗?如果是这样,您可能希望确保在服务器上正确设置所有内容并进行正确的重定向,如果需要,您可以使用基本标记等。如果正在使用,您还可以关闭html5Mode以消除任何服务器设置问题。