angular - 用角度4中的routerLink替换当前动态参数
问题描述
假设我在角度 4 中有这样的路线:
/:study_id/folders/:folder_id
我想创建一个只替换:folder_id
我试过这个:
<a [routerLink]="[folder.id]">a</a>
但这会将 folder_id 附加到现有路由上,因此它变为
/:study_id/folders/:folder_id/:folder_id
我想替换:folder_id
而不必指定 url 的所有其他部分。
解决方案
您可以将选项传递给 routerLink 指令:angular.io/api/router/NavigationExtras
在组件中:
import { ActivatedRoute, Router } from "@angular/router";
constructor(
private router:Router,
public route: ActivatedRoute) {
}
navigate(folder){
this.router.navigate([folder.id], { relativeTo: this.route });
}
在标记中:
<a (click)="navigate(folder)"></a>
推荐阅读
- java - IBM MQ listener service - onMessage not getting triggered
- c++ - C++ Error when threading, std::invoke:
- ejs - 是否可以为 harpe js 参数调用另一个参数?
- r - 如何编写 R lapply 循环,以便如果循环超时,到目前为止生成的所有对象仍然存在于循环之外?
- java - Android Studio 中的秒表按钮崩溃
- php - Delete all posts related to a user in laravel
- angular - Angular 6 - Dynamic Routing with Prefix
- powershell - 从作为文本文件加载到 powershell 中的 Cisco IOS 配置中读取部分行
- php - 更新页面内容而不刷新页面?
- php - 多张图片上传时间不会在Laravel的文件夹中上传相同的图片