当刷新页面时,Angular 4路由器丢失了参数

时间:2017-11-21 18:00:14

标签: angular router angular-router

当我使用路由器链接时,路由器找到该页面并进行渲染 但是当我尝试刷新页面或从网址重新输入时,它会失败并给我这个错误:

错误:无法匹配任何路由。网址细分:'项目'

我在搜索之前已经搜索了很多,但无法找到答案。

我正在使用的链接: http://localhost:4200/#/project/5

这是我的路由器配置:

export const routes: Routes = [
    { path: '', component: UserHomepageComponent },
    { path: 'signin', component: SigninComponent },
    { path: 'signup', component: SignupComponent },
    { path: 'userHomepage', component: UserHomepageComponent },
    { path: 'project/:project', component: ProjectComponent }
];

有效的链接:

<div [routerLink]="['/project/', project.id ]" class="project" *ngFor="let project of projects">
    <div class="project-name">{{project.id}} - {{project.description}}</div>
</div>

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

您的代码应该只是

<div [routerLink]="['/project', project.id ]" class="project" *ngFor="let project of projects"> <div class="project-name">{{project.id}} - {{project.description}}</div> </div>

另外我看到你在路径中有#,所以刷新时可能找不到匹配的路线!

更改你的app.module没有这些,

<强> {provide: LocationStrategy, useClass: HashLocationStrategy}