【问题标题】:What should be an equivalent [routerLink] code for this.router.navigate code?this.router.navigate 代码的等效 [routerLink] 代码应该是什么?
【发布时间】:2017-06-09 01:52:27
【问题描述】:
   showBio(id) {
  this.router.navigate(['/speakers', {outlets: {'bio': [id]}}]);
}

如何在 [routerLink] 中编写它并且仍然可以传递一个 id? 我正在关注这个例子以供参考:Example

【问题讨论】:

  • 你需要绑定点击事件,在函数中你可以写导航线
  • 是的,这对我来说很好用。但是,我想将它与 [routerLink] 一起使用,因为这也应该是可能的。我之前使用没有命名路由器的 [routerLink]。现在我用命名的网点更新它。

标签: angular routing navigation angular2-routing routerlink


【解决方案1】:

路由语法与[routerLink]保持一致:

<a [routerLink]="['/speakers', {outlets: {'bio': [id]}}]">Link</a>

为此,id 属性需要暴露给您的模板。

【讨论】:

  • 我也尝试过同样的事情。但我收到此错误:错误:无法匹配任何路线:'speakers' 同时,我可以通过 ShowBio(id) 导航到特定的扬声器生物。
  • 您是否使用了这条路径 - 'speakers' - 包括初始斜线?也许你需要调整路径。默认情况下,routerLink 路径是相对于当前路径的。我的代码假设您有一个/speakers 在您的应用程序的根目录
  • 是的,它在根路由模块中,没有'/'。
  • 奇怪。如果您尝试不带outlets 部分的链接,它是否有效?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-03-19
  • 2019-05-16
  • 2015-06-06
  • 1970-01-01
  • 1970-01-01
  • 2014-02-20
相关资源
最近更新 更多