当部署到真实主机时,Angular 5路由无法获取

时间:2018-05-04 08:04:24

标签: angular routing router

我按照说明构建angular 5 web应用程序,我在app.module.ts中定义了所有路线

imports: [
    BrowserModule,
    RouterModule.forRoot([
      { path: '', component: HomeComponent },
      { path: 'login', component: LoginComponent },
      { 
        path:'chat-user-dashboard',
        component:ChatUserDashboardComponent, 
        canActivate:[ChatAuthGuard]
      },
      {path:'contact-us', component:ContactUsComponent},
      {path:'about-us', component:AboutUsComponent},
      {path:'not-found',component:NotFoundComponent},
      { path: '**', redirectTo: 'not-found' }
    ])
  ],

在本地服务器中一切正常,当点击链接时导航到正确的页面,当只是粘贴网址示例https://example.com/login时,它运行良好问题是当我将其部署到托管服务时它只能工作点击RouterLink时,如果我粘贴完整网址,我说的是CannotGet / login ...

这就是我在Html中使用RouterLink的方式

 <a class="nav-link" routerLink='about-us'>about us</a>

我搜索了解决方案,从我理解的问题是浏览器找不到那些页面,因为Angular没有它们并使用自己的路由服务,我需要定义总是回退到index.html 我确实有后备路径,如上所示

{path:'not-found',component:NotFoundComponent},
      { path: '**', redirectTo: 'not-found' }

也尝试过这样   {路径:&#39; **&#39;,组件:NotFoundComponent}

但是找不到页面我得到了无法获取页面 有什么想法吗?

0 个答案:

没有答案