angular.module('ConsoleUIApp', ['ui.router','ui.bootstrap'])
.config(function ($stateProvider, $urlRouterProvider, $httpProvider) { // For any unmatched url, redirect to /state1
$urlRouterProvider.otherwise("/home"); $stateProvider
.state('home', {
url: "/home",
templateUrl: "views/home.html",
controller: 'HomeCtrl'
})
})
.run(function($rootScope, $state, $stateParams) {
// previous state handling
      $rootScope.previousState = {};
      $rootScope.$on('$stateChangeSuccess', function(event, toState, toParams, fromState, fromParams) {
    // store previous state in $rootScope
     $rootScope.previousState.name = fromState.name;
   $rootScope.previousState.params = fromParams;
      });
});

back-button directive :

yourModule.directive('backButton', [
'$rootScope',
'$state',
'$parse',
function($rootScope, $state, $parse) {
return {
restrict: 'EA',
link: function(scope, el, attrs) {
var defaultState
, defaultStateParams; el.click(function() {
var stateName
, stateParams; if ($rootScope.previousState.name) {
stateName = $rootScope.previousState.name;
stateParams = $rootScope.previousState.params;
}
else {
stateName = defaultState;
stateParams = defaultStateParams;
} if (stateName)
$state.go(stateName, stateParams);
}); attrs.$observe('defaultState', function() {
defaultState = attrs.defaultState;
});
attrs.$observe('defaultStateParams', function() {
defaultStateParams = $parse(attrs.defaultStateParams)(scope);
}); $rootScope.$watch('previousState', function(val) {
el.attr('disabled', !val.name && !defaultState);
});
}
};
}]);

https://github.com/angular-ui/ui-router/issues/92

ui-router实现返回上一页功能的更多相关文章

  1. js实现返回上一页功能

    大家在做 "返回上一页" 这个功能的时候 都是用history.go(-1);来实现的 但这段代码只是简单的使用浏览器的后退功能 从浏览器缓存中取出页面来显示 但我们绝大部分情况都 ...

  2. JS 返回上一页并刷新,但不用重新加载整个页面(ajax实现)

    需求 有三个页面A.B.C,点击A=>B,点击B=>C,在C中添加内容,点击确定返回到B,此时B页面需重新加载新的内容.再次点击B的返回按钮,希望返回到A而不是C. ===== 2017/ ...

  3. js_返回上一页(兼容苹果手机)

    返回上一页功能是常见的功能. 常用的有以下三种代码: window.history.go(-1); //返回上一页 window.history.back(); //返回上一页 //如果要强行刷新的话 ...

  4. php实现返回上一页的功能

    php实现返回上一页的功能的3种有效方法 header(location:你的上一页的路径);   //   注意这个函数前不能有输出      header(location:.getenv(&qu ...

  5. php实现返回上一页的功能的3种有效方法

    php实现返回上一页的功能的3种有效方法 header(location:你的上一页的路径);   //   注意这个函数前不能有输出 header(location:.getenv("HT ...

  6. js 实现返回上一页和刷新等页面跳转功能

    原文 出处http://www.2cto.com/kf/201111/109821.html 1. Javascript 返回上一页history.go(-1), 返回两个页面: history.go ...

  7. JS控制,返回上一页之后强行刷新一次

    网站建设过程中,提交页面后我们经常要用到window.history.go(-1)返回上一页,因为页面的缓存功能,我们只能返回上次操作的页面,但在删除等操作中,我们希望实时看到删除项目后的页面,这就要 ...

  8. 6种方法实现asp.net返回上一页

    其实要实现返回上一页的功能,主要还是要用到JavaScript. 一: 在ASP.net的aspx里面的源代码中 <input type="button onclick="J ...

  9. [moka同学收藏]网页上的“返回上一页”的几种实现代码

    我们在制作网页的时候,经常在网页上要用到"返回上一页"的功能.这一功能在制作网页的时候会有多种编码方法,在此,笔者将比较常用的几种编码写作方法在下面列出来,供各位技术人员参考使用. ...

随机推荐

  1. 2018 Multi-University Training Contest - Team 1 题解

    Solved A HDU 6298 Maximum Multiple Solved B HDU 6299 Balanced Sequence Solved C HDU 6300 Triangle Pa ...

  2. codeforces 462div.2

    A A Compatible Pair standard input/output 1 s, 256 MB    x1916 B A Prosperous Lot standard input/out ...

  3. Qt5全局热键第三方库qxtglobalshortcut5使用

    1.下载第三方库https://github.com/ddqd/qxtglobalshortcut5. 2.把qxtglobalshortcut5文件放在项目目录下,在项目.pro加入一句,inclu ...

  4. linux dynamic lib

    // test1.h ; struct AA { int a,b: }; AA b(5,6); int ball(); // test1.cpp # include"test1.h" ...

  5. (一)七种AOP实现方法

    在这里列表了我想到的在你的应用程序中加入AOP支持的所有方法.这里最主要的焦点是拦截,因为一旦有了拦截其它的事情都是细节. Approach 方法 Advantages 优点 Disadvantage ...

  6. LIght OJ 1179

    题意: 约瑟夫环问题, 给你N 个人, 没K个出队, 问最后剩下的人的编号. 思路: 直接模拟会T, 对于N个人 , 是一个约瑟夫环问题, 当第一个人出队后, (标号一定为 k % n -1) 剩下的 ...

  7. Java中常用的加密算法小结

      散列算法(单向散列,不可逆) MD5(Message Digest Algorithm 5) SHA(Secure Hash Algorithm)   对称加密(加密解密使用同一密钥,速度快) D ...

  8. [转]phpstorm激活码注册码序列号

    浏览器打开 http://idea.lanyus.com/ , 点击页面中的“获得注册码”,然后在注册时切换至Activation Code选项,输入获得的注册码一长串字符串,就可以注册成功!(推荐方 ...

  9. Day7--------------虚拟机网络服务

    1.桥接 连接到本地的网卡,把本机的网卡看作是虚拟交换机 ping ip地址 arping -i eth0 192.168.11.11 返回物理MAC地址             #可以检查是否有重复 ...

  10. Confluence 6 Confluence 安装目录

    Confluence 安装的目录(Confluence Installation directory)定义的是 Confluence 是在那里进行安装的.这个目录有时候也被称为 Confluence ...