有没有办法在控制器中检测 reload:true ?

Is there a way to detect reload:true in controller?

单击一次,我将强制重新加载状态。我想知道是否有可能在控制器中捕获该事件?我的视图由两个子视图组成,我需要其中一个子视图来初始化它的值。

谢谢

ui-路由似乎没有公开此信息。这是一个想法。收听 $stateChangeSuccess 事件(或 $stateChangeStart,具体取决于您的情况)。在这种情况下,您可以将 toState 和 toParams 与 fromState 和 fromParams 进行比较,以推断这是一个重新加载。

$scope.$on('$stateChangeSuccess',
    function (event, toState, toParams, fromState, fromParams) {
        if (angular.equals(toState, fromState) && angular.equals(toParams, fromParams)) {
            console.log('reload');
        }
        else {
            console.log('not a reload');
        }
    }
);