重定向后的 Angular 浏览器后退按钮

标签 angular redirect url-redirection router back-button

我有一个委托(delegate)组件,除了通过路径中的 ID 解析对象(例如 /tournament/:id),检测锦标赛的类型和转发(通过 router.navigate(..)) 到另一条路线(例如 /tournament/:id/league)

问题是浏览器后退按钮会返回到委托(delegate)组件并显示我的委托(delegate)组件的空模板。

除了 router.navigate 之外,还有其他选项可以转发到另一个组件吗?考虑到以下几点:

  1. 浏览器后退按钮不会跳转到委托(delegate)组件
  2. 路由 /tournament/:id/league 应该反射(reflect)在浏览器 URL 中

最佳答案

您可以使用 replaceUrl: true 跳过按下后退按钮时的委托(delegate)组件。

当离开委托(delegate)组件时,只需使用这样的东西 -

this.router.navigate(['A'], {
    replaceUrl: true
});

关于重定向后的 Angular 浏览器后退按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43888450/

相关文章:

c# - 带 POST 的 URL 重定向页面,使用 JavaScript 或 C#

Django:当目标 URL 也是重定向时测试重定向

go - 在 golang 中发布数据后将用户重定向回相同的 URL

angular - 由于大量模拟数据,ng 测试 JavaScript 堆内存不足

javascript - 同时使用 Angular 1 和 Angular 2

angular - 在 Angular 单元测试中使用回车键提交表单

ruby-on-rails - rails + Angular : Redirection After Sign-In/Up

javascript - Angular 中的 D3 力模拟

c++ - 在 C++ 中重定向

tomcat - 如何使用默认参数将纯 servlet url 重定向到同一个 servlet?