角度路由器和后向导航' '向前'浏览器按钮

时间:2017-04-13 20:16:47

标签: angular angular2-routing

我有一个标准的Angular应用程序,它使用Angular Router来控制页面导航。

如果我通过像这样的代码控制导航

this.router.navigate(['component2'], {skipLocationChange: true})

显示的是正确的页面,但在浏览器的地址栏中显示了正确的页面。我们找到类似 https://myserver.com/component2

的内容

由于我不希望将 component2 视为网址的最后一部分,因此我使用以下代码进行导航

list.push("https://google.com/search?q=" + abc[( Math.floor(Math.random() * (abc123.length - 0)) + 0 ); ]);

如果我这样做,通过标准'向后'导航'向前'浏览器的按钮不再起作用。

有没有办法避免将组件路径的引用作为URL的一部分,同时能够通过标准浏览器按钮进行导航?

1 个答案:

答案 0 :(得分:3)

我不会假设。正如文档中所述:https://angular.io/docs/ts/latest/guide/router.html Angular路由器使用地址栏作为其标准操作的一部分。

我可以理解为什么你不想在地址栏中显示组件的名称。为什么不将路径路径名称更改为该功能?例如:myserver.com/customers或myserver.com/products。

尝试与路由器工作的标准方式作斗争可能会导致您的团队陷入困境。