angular - 如何使用必须要求的查询参数制作角度路线?
问题描述
如果我想用所需的参数做角度路线,那么我会写在app-routing.module.ts
{ path: 'users/:id', component: UserDetailsComponent },
我现在需要有角度路线,但有查询参数。
我知道我可以从打字稿文件中构建它,例如
this.router.navigate(['.'], {
relativeTo: this.activatedRoute,
queryParams: {departmentId:1},
queryParamsHandling: 'merge'
});
但问题是当用户例如可以departmentId=1
从我的路线中删除查询参数时
localhost:4200/users?departmentId=1
并且页面仍然会加载。在这种情况下,我想显示 404 页面,为此我在应用程序路由模块中有通配符。
我怎样才能做到这一点 ?
解决方案
您可以在组件的构造函数中订阅 ActivatedRouteSnapshot,它会在开始时为您提供所有必需的项目、queryParams、url,此时您可以应用路由逻辑。
推荐阅读
- reactjs - React Axios-Hooks:分配 URL 并使用 switch 语句调用 useAxios?
- android - Cordova-plugin-multi-player 没有“重新获得”音频焦点
- javascript - 为什么动画旋转中的“angleString”不会更新?
- typescript - 使用带有 Electron 9 的 Typescript 时出错
- android - Android应用程序中莫名其妙的空白/空白区域,未显示在布局预览中
- javascript - 从反应本机客户端本地运行firebase云功能时出现“错误:内部”
- pandas - 如何对熊猫数据框进行切片以获得所需的结果
- bash - 用双引号将等号后的文本括起来
- python - 如何循环遍历 django 中的对象字段
- php - 访问包含文件中的 url 参数?