我正在使用角度为1.5的ui-router。
我有这个问题,当我按下浏览器BACK按钮,而不是以线性方式返回时,它按照奇怪的顺序。
例如:
setOne: abstract
State1: setOne.Result
State2: setOne.Availability
setTwo: abstract
State3: setTwo.Sim
State4: setTwo.Boost
Page order is : State1 > State2> State3 > State4
现在假设我从State1开始并继续浏览到setTwo.Boost (最后一个州)&按浏览器后退按钮,地址栏闪烁,和 浏览器加载State3。
之后,如果我再次按“返回”按钮,那么理想情况下应该去 到State2然而它再次进入State4。
所以预期的历史行为应该是:
State4 > State3 > State2 > State 1
实际行为:
State4 > State3 > State4> State2> State3 > State2 > State 1
我可以看到,当按下浏览器中的Back按钮时,$ stateChangeStart被调用两次。地址栏中的URL来回闪烁,看起来是额外的历史记录条目会显示在后退按钮历史记录中。这将浏览器历史记录中最后查看的页面修改为我点击后退按钮的当前页面。
我遇到了类似的问题https://github.com/angular-ui/ui-router/issues/1780,但无法解决如何解决此问题。
它只会让我发疯,我哪里出错了?
我在这里配置错误的任何建议。