Angular UI路由器刷新时的动态状态为404

时间:2015-12-14 07:59:49

标签: angularjs angular-ui-router

我正在根据当前用户角色动态加载状态。但是当刷新页面时,它将转到404页面。另外在$ stateChangeStart事件中,fromState.name为空。

有没有办法在点击刷新按钮之前进入状态?我应该在按下刷新之前存储状态,然后使用它吗?

  .state('404', {
    url: '/404',
    templateUrl: '404.tmpl.html',
    controller: function ($scope, $state, APP) {
        $scope.app = APP;

        $scope.goHome = function () {
            $state.go('default.page');
        };
    }
})

$urlRouterProvider.otherwise('/404');

...

 $rootScope.$on('$stateChangeStart', function (e, toState, toParams, fromState, fromParams) {

    //fromState.name = '' on refresh
});

提前致谢!

1 个答案:

答案 0 :(得分:0)

以下似乎有效,不确定这是否是最佳方法。在卸载事件之前保存状态,然后在$ stateChangeStart中使用它。

hotel