【问题标题】:Angular2 - Disable RouterLinkAngular2 - 禁用RouterLink
【发布时间】:2017-09-26 01:58:13
【问题描述】:

我想要一种更好的方式来编写这些代码行。

<li *ngIf="params.page > 1" class="page-item">
    <a class="page-link" [routerLink]="[]" [queryParams]="changePage(params,1)">First</a>
 </li>
<li *ngIf="!(params.page > 1)" class="page-item disabled">
     <a class="page-link">First</a>
</li>

我想在 !(params.page > 1) 时禁用 routerLink。 “禁用”类是最简单的方法(ngClass)。但是 routerLink 仍将处于活动状态

【问题讨论】:

  • 关于您的模板中的params,来源是什么?您是从ActivatedRoute#params.subscribe() 还是从ActivatedRoute#snapshot.params 获得的?

标签: angular angular2-routing


【解决方案1】:

试试这样的

<li class="page-item">
<a class="page-link" [class.disabled]="(params.page > 1) ? true : null" 
    [routerLink]="[]" [queryParams]="changePage(params,1)">First</a>
</li>

编辑

我错过了这部分。 :D

你还需要添加类

 a.disabled {
     pointer-events: none;
     cursor:default;
 }

试试这个并检查它是否有效。

【讨论】:

  • 正如我所说,课程是最简单的部分。我想禁用 routerLink。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-07-07
  • 2016-09-16
  • 1970-01-01
  • 2016-05-15
  • 1970-01-01
  • 1970-01-01
  • 2017-08-19
相关资源
最近更新 更多