带多个参数的Angular 2路由器链接
Angular 2 Router Link with multiple parameters
我有一个这样的路由
path: 'projects/:id/settings'
在我的header。component。html中我想有一个到这个页面的链接
<a routerLink="['projects', progectId,'settings']" routerLinkActive="active">cool link</a>
我有一个project.component,当我点击某个项目时,我进入项目页面。然后我需要有可能到达projects/:id/settings
或其他类似的路线。
如何从projects.component传递progectId
变量?
或者有人知道另一种实现方法
对于这种route
,我有同样的问题,您应该像这样使用routerLink
:
<a routerLink="/projects/{{progectId}}/settings" routerLinkActive="active">cool link</a>
并将route path
更改为routing module
,如下所示:
{ path: ':id/settings', component: YourComponent}
获取projectId
的其他信息,您应该遵循以下步骤:
- 在
component constructor
中注入ActivatedRoute
object
- 在
component
中定义variable
称为projectId
。 - 在
ngOnInit()
方法中通过activatedRoute
object
获取params
最后你应该
get
projectId
在你的html
像这样:{{projectId}}
import {Router, ActivatedRoute, Params} from '@angular/router'; @Component({ selector: 'app-your-component', templateUrl: './your-component.component.html', styleUrls: ['./your-component.component.css'] }) export class YourComponent implements OnInit { private projectId: string; constructor(private activatedRoute: ActivatedRoute) {} ngOnInit() { this.activatedRoute.params.subscribe((params: Params) => { this.projectId = params['id']; }); }}
我通常在组件类中这样做
somefunctionName() {
let link = ['/summary', this.param1, this.param2];
this.router.navigate(link);
}
然后从html代码中调用函数,像这样
<a (click)="somefunctionName()">
在你的情况下,因为我假设你是循环通过你的项目,你可以调用你的函数与这样的参数
<a (click)="somefunctionName(pass the parameter here)">
然后更改函数定义以反映这一点。
相关文章:
- 有条件地与react路由器链接
- 如何使用react路由器的正常锚链接
- React路由器<link>如何在Jest测试中获取href的值
- 相对链接和backbone.js路由器
- 主干网+jquery:如何从与主干网的链接中检索数据's路由器
- 使用路由器链接动态添加元素
- 反应路由器,所需的道具“to”未在“链接”中指定
- 单视图页面永久链接为空,带有铁路由器
- 如何将指向UI路由器版本化文件的链接替换为Usemin
- 反应路由器:使用 <链接> 作为可点击的数据表行
- EmberJS - 每个页面都有一个没有路由器的控制器链接
- 我的 ui 路由器链接不起作用,角度
- React路由器链接don'Don’别那么受欢迎
- 在我的Meteor应用程序中,当我单击链接时,路由器不会呈现页面
- 使用iron路由器1.0.0-pre2版本下载文件链接
- 单击链接两次以使用ui路由器激活状态
- 带多个参数的Angular 2路由器链接
- 带ui的AngularJS.路由器:点击相同状态链接时重新加载页面
- 链接无法使用angular ui路由器
- 解析.当深度链接时,路由器无法找到引用文件