angular 获取跳转前一页的路由名称

  项目中有一个高级参数配置页面,进来有个提示,输入正确的名称点击确定才能看到系统高级配置项,如果点击关闭的话,直接跳转回之前的页面。

  跳转好做,直接 $state.go() 就可以.

  但获取之前页面路由。。。查了半天百度也没有个答案,都是些 $on、$watch 的方法,尝试了好几个,也没成功。

  想着 angular 框架这么高大上,肯定有方法能直接获取到上一个页面的路由信息,比如在一个渲染页面的监听里,然后参数中存着上个页面的信息。

  接着突然就想到了 $transitions 。查了一下,果然,方法中的参数有 .from().name 的方法可以获取到上个页面的路由名称,获取到名称就一切都解决了。

$transitions.onSuccess({}, function (transition) {
    $rootScope.previewPageState = transition.from().name;
    console.log($rootScope.previewPageState);
})

 

posted @ 2017-11-13 11:49  名字不好起啊  阅读(4393)  评论(0编辑  收藏  举报