使用ui路由器位置替换需要两个历史记录

时间:2018-10-02 06:50:17

标签: javascript angularjs angular-ui-router

我有一个使用angular-ui-router@0.3.2处理路由的AngularJS应用程序。我有一些我不想保存在浏览器历史记录中的状态,并发现可以通过将{location: 'replace'}的选项添加到$state.go来实现。

此重定向后,我的挑战开始了,然后我有了一个自定义的后退按钮(使用$window.history.back()),需要先单击两次,然后再返回。

场景:enter image description here

  1. 使用$state.go('page2')从Page1转到Page2
  2. 使用$state.go('page3')从Page2转到Page3
  3. 使用$state.go('page2', {}, {location: 'replace'})从Page3返回Page2
  4. 使用$window.history.back()从Page2返回至Page1

在第2步中,我需要单击返回按钮两次,然后返回到Page1-就像它需要补偿未保存的状态一样。

有人遇到过吗?

0 个答案:

没有答案