Javascript 获取转换信息

Javascript 获取转换信息,javascript,angularjs,angular-ui-router,Javascript,Angularjs,Angular Ui Router,我有以下情况: 在解析阶段,有时刷新时某些依赖项会失败。在捕获$rootScopeService上的错误并优雅地处理它的同时,我需要在前面的一个例子中(在$exceptionHandler服务的decorator实现中)知道我在从一个状态转换到另一个状态的过程中失败了 $state服务提供转换,不幸的是,转换在解析成功后被填充,所以我不能使用它 有什么已经实施了吗 我目前的想法是实现一个附加服务或装饰$state服务,以便使用go函数进行跟踪,或者通过监听$state事件简单地设置值 是否已经实

我有以下情况:

在解析阶段,有时刷新时某些依赖项会失败。在捕获$rootScopeService上的错误并优雅地处理它的同时,我需要在前面的一个例子中(在$exceptionHandler服务的decorator实现中)知道我在从一个状态转换到另一个状态的过程中失败了

$state服务提供转换,不幸的是,转换在解析成功后被填充,所以我不能使用它

有什么已经实施了吗

我目前的想法是实现一个附加服务或装饰$state服务,以便使用go函数进行跟踪,或者通过监听$state事件简单地设置值

是否已经实现了实现这一点的逻辑?(我的意思是在图书馆里)或者对此有其他建议吗


谢谢

这可能是穷人的解决方案,但您可以使用以下方法:

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

$rootScope.$on('$stateChangeSuccess', 
    function(e, toState, toParams, fromState, fromParams, $rootScope){
         $rootScope.targetState = undefined })
function myResolve($rootScope) {
    console.log($rootScope.targetState)
}
然后在resolve函数中,通过以下方式访问目标状态:

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

$rootScope.$on('$stateChangeSuccess', 
    function(e, toState, toParams, fromState, fromParams, $rootScope){
         $rootScope.targetState = undefined })
function myResolve($rootScope) {
    console.log($rootScope.targetState)
}

我在我的一个应用程序中使用了这个。状态更改监控在我的应用程序的运行块中实现

如何访问toState参数。编辑答案。这是一个成功,但不完全。这是我已经提出的解决方案。toState不存在,需要进行某种扩展。在任何情况下,答案都有点与问题无关,因为问题本身已经说明了答案。toState不存在于哪里?我刚刚在我的应用程序中使用console.log(toState.name+“start”)和console.log(toState.name+“success”)和console.log(“resolve”)尝试了这一点,所有操作都如预期般正常。我想你的意思是,在resolve中,你无法访问该状态。你的问题并不完全清楚。我已经修改了答案来实现这一点。