angular这种单页面应用的返回是怎么实现的呢?

angular这种单页面应用的返回是怎么实现的呢?
就是左上角那个返回按钮是用的什么js代码呢?

阅读 3.4k
4 个回答

路由stateProvider

直接使用原生函数不行吗?

window.history.go(-1);

可以
window.history.go(-1);
也可以匹配路由跳转到上一页,或者某一页。
但是一定注意安卓返回键的问题。

问题不够具体,也只能泛泛说一下。

假设楼主说的不是浏览器的返回按钮。。。而是某个应用或框架(如Ionic)的控件中,在左上角有个返回按钮可以返回应用的上一个状态。

有可能用的是如其它答案所说的 window.history.go(-1); ,用了浏览器的历史返回却没有刷新页面的原因是因为 url 其实没变, url 里的 # 起的就是这个作用,具体可以再去了解。

也有可能是完全另做的一套机制,不依赖浏览器的历史,如 ionic 中 $ionicHistory ,用于提供比浏览器的历史更加灵活的机制满足自己需求。不管功能多牛逼,模型简化下来一般就是栈栈栈。。。

这种另外实现的历史管理,用法只能看具体文档,或者自己翻源码。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题