【发布时间】:2017-11-27 00:10:44
【问题描述】:
在 app.routing.ts 我添加了一个带参数的路由
{
path: 'manager-branch/:id',
loadChildren: './components/manager/manager-branch/manager-branch.module#ManagerBranchModule'
}
一切正常如果我通过应用程序浏览它,但是如果我在该组件上刷新页面,我的应用程序根 url 将是错误的并且页面将无法加载。
例如,我的应用程序根 url 是 http://localhost:4200
如果我在任何其他没有路由参数的组件上刷新页面,它会正常工作。
如果我在http://localhost:4200/manager-branch/1 上刷新页面,它将无法加载。
失败 加载资源:服务器响应状态为 404(不是 找到)http://localhost:4200/manager-branch/assets/css/font-awesome.min.css
您可以看到应用 url 不正确。里面不应该有manager-branch。
这里是 manager.branch.module.ts
@NgModule({
imports: [
ManagerBranchRoutingModule,
CommonModule,
Ng2BootstrapModule,
ModalModule.forRoot(),
FormsModule
],
declarations: [
ManagerBranchComponent,
ManagerEmployeeComponent,
EmployeeProfileComponent,
ManagerTransactionsComponent,
EmployeeTransactionsComponent,
]
})
export class ManagerBranchModule {}
问题出在我的 app.module.ts
useClass: PathLocationStrategy
它适用于 HashLocationStrategy,但我必须坚持使用 Path
【问题讨论】: