角度8:仅当使用RouterLink时,动态路由才能工作吗?

时间:2019-07-08 17:41:05

标签: angular routing

在使用Angular动态路由时遇到了一件奇怪的事情。 动态路由仅在被RouterLink调用时才起作用。 但是,每当我尝试通过直接在浏览器中输入URL来访问路由时,应用就会崩溃。

(每个必需的脚本文件的Dev控制台日志Failed to load resource: the server responded with a status of 404 (Not Found)

我是否缺少某些内容,或者有特定原因导致动态路由仅在被RouterLink调用时起作用?

对于任何感兴趣的人,下面是一些代码段:

const appRoutes: Routes = [
   { path: "user", component: UserComponent },
   { path: "user/:userID", component: UserDetailComponent }
];

HTML

<ul class="list-unstyled">
   <li *ngFor="let user of users">
      <a [routerLink]="['/user', user]">{{ user }}</a>
   </li>
</ul>

真的很抱歉,如果这是一个白痴问题,但是我已经为此苦苦挣扎了好几天了。 谢谢!

1 个答案:

答案 0 :(得分:0)

使用HashLocationStrategy。通过用RouterModule.forRoot(routes)替换RouterModule.forRoot(routes, {useHash: true})

请参阅:https://codecraft.tv/courses/angular/routing/routing-strategies/,以获取更多详细信息。