没有哈希的Angular 2路由器URL导致刷新问题

时间:2017-02-21 20:16:42

标签: javascript angular angular2-routing

我创建一个角度2应用程序(以前的角度1开发人员) 而我发现很难获得角度2网址与我的服务器一起工作。

基本上,角度2不使用#,这意味着当应用内路由发生变化时 " /"到页面/ 1,然后角度加载页面/ 1组件和使用ajax的所有数据,并显示页面。它很好用。但是,当用户刷新页面时,...页面将无法正常工作。

我可以做什么/配置,让角度应用程序在" /"重新加载页面,但为服务器提供一些隐藏的参数,如" pages / 1"因此,在" /"重新加载页面之后,angular会知道用户想要转到" pages / 1"并进行重定向。

1 个答案:

答案 0 :(得分:2)

您可以切换到使用哈希:

imports: [
    /* ... */
    RouterModule.forRoot(appRoutes, { useHash: true })
]

要支持无哈希网址,必须将服务器配置为使用相同的index.html文件来响应任何请求的网址。