Angular 2 rc.5 从 rc.4 更新后无法刷新页面

Angular 2 rc.5 unable to refresh page after updating from rc.4

我刚刚将我的应用程序从 rc.4 更新到 rc.5,我遇到了一个奇怪的错误。

当我点击 localhost:8080 时,我按预期被重定向到 localhost:8080/browse,但是当我点击浏览器刷新按钮时,出现以下错误:Cannot GET /browse.

注意:在哈希被添加到 URL 之前,即 localhost:8080/#/browse 但不是没有添加。

这是我的路线:

const routes: Routes = [
  {
    component: DashboardComponent,
    path: 'browse'
  }, {
    component: ProductViewportComponent,
    path: 'project/:id'
  }, {
    path: '',
    pathMatch: 'full',
    redirectTo: '/browse'
  }
];

export const routing: any = RouterModule.forRoot(routes);

如果您使用 Node.js,那么您必须将所有内容重定向到 index.html 文件。

app.use('*', function(req, res) {
  res.render('index.html');
});

不知道是res.render还是res.redirect(不过这不重要,我只是给了你一个主意)。

顺便试试编辑 redirectTo: '/browse'redirectTo: 'browse'

问题是我在不知不觉中从 HashLocationStrategy 更改为 PathLocationStrategy