UI-Router更新历史记录同时保留params

时间:2017-06-26 13:26:40

标签: javascript angularjs angular-ui-router

我正在使用ui-router 1.x并且在更新历史记录时尝试进入另一个州 - 但我不想丢失参数。

所以预期的结果是我会移动到下一个状态,并且URL将保持不变,按下后退按钮会将我带到之前的状态 - 仍然使用相同的URL。

这是我目前的设置:

$stateProvider
.state('parentState', {
  component: 'parentComp',
})
.state('parentState.first', {
  views: {
    first: { component: 'firstComp'},
  }
})
.state('parentState.second', {
  views: {
    first: { component: 'firstComp'},
    second: { component: 'secondComp'},
  }
})

我试过了 - 它不起作用:$state.go('parentState.second', null, {location:false, params: $stateParams});

1 个答案:

答案 0 :(得分:0)

我希望这可以帮助您回顾Windows历史记录:

$window.history.back(); using $window services

您还可以尝试$stateChangeSuccess并在任何变量中保留fromParams并根据需要进行广播:

('$stateChangeSuccess', function(ev, to, toParams, from, fromParams)