目前,我们的项目是使用默认的 $routeProvider
,我使用这个“黑客”,改变 url
没有重新加载页面:
services.service('$locationEx', ['$location', '$route', '$rootScope', function($location, $route, $rootScope) {
$location.skipReload = function () {
var lastRoute = $route.current;
var un = $rootScope.$on('$locationChangeSuccess', function () {
$route.current = lastRoute;
un();
});
return $location;
};
return $location;
}]);
以及 controller
$locationEx.skipReload().path("/category/" + $scope.model.id).replace();
我正在考虑用 ui-router
代替 routeProvider
作为嵌套路线,但是在 ui-router
中找不到这个。
有没有可能——对 angular-ui-router
做同样的事情?
我为什么需要这个?
让我用一个例子来解释:
创建新类别的路由是 /category/new
在保存 clicking
之后,我展示了 success-alert
,我想把路由 /category/new
改为 /caterogy/23
(23-是存储在 db 中的新项目的 id)