在 Angular 9 中基于默认地址的路由显示组件

Show Component Based on Routing on Default Address in Angular 9

我试图在加载我的应用程序时将这些组件之一显示为默认组件:

<!--I want to show this one-->
<app-ms-power-automate *ngIf="router == '/ms-power-automate'"></app-ms-power-automate>
<app-uipath *ngIf="router == '/uipath'"></app-uipath>

我试过这个:

<app-ms-power-automate *ngIf="router == '/ms-power-automate' || router == '/'"></app-ms-power-automate>

或者这样:

<app-ms-power-automate *ngIf="router == '/ms-power-automate' || router == ''"></app-ms-power-automate>

他们一直给我看空洞的风景。知道我做错了什么吗?

我找到了问题的解决方案,我在 app-routing.module.ts 中定义了一个默认路径,如下所示:

{ path: '**', component: MsPowerAutomateComponent }

它正在使用 通配符,更多信息:

https://angular.io/guide/router

此外,我需要添加哈希策略:

RouterModule.forRoot(routes, { useHash: true })

避免错误404错误。来自这里的信息:

https://medium.com/wineofbits/angular-2-routing-404-page-not-found-on-refresh-a9a0f5786268