浏览器后退按钮导航按预期工作,但在遇到抽象状态时,它会解析为原始状态(必须是导航到的抽象状态的子项)。
在angular-ui-router中是否有办法抑制抽象状态被添加到历史记录中?
答案 0 :(得分:1)
有同样的问题。我希望它能帮到你How do I get the Back Button to work with an AngularJS ui-router state machine?
这对我来说有点困难,似乎必须有一个更简单的解决方案
修改强> 我做的。 首先,你需要你的旧状态(我们还有本地存储的包装器,所以你应该改变方法)。
csc.exe
我们还编写了一个服务,在将您的下一个常规状态与最后一个状态进行比较后,从抽象状态重定向到常规状态
angular
.module('app')
.run(appRunFunction);
appRunFunction.$inject = ['$rootScope', 'localstorage'];
function appRunFunction($rootScope, localstorage) {
$rootScope.$on('$stateChangeSuccess', function(event, toState, toParam, fromState, fromParam) {
localstorage.setValue('lastState', fromState.name);
});
};