首页 > 解决方案 > 路由器链接一直被调用

问题描述

我有以下代码

 routerLink="{{onSelect(id)}}.

一直在调用此方法,当我单击转到另一个选项卡时,它会接管,无论如何,只有在 iclick或? 时才会调用此函数right-click(new Tab)?提前致谢!

我的代码是这样的

HTML<a  routerLink="{{onSelect(prod?.key)}}">{{prod?.name}}</a>
Ts.
onSelect(prod){
    setTimeout(() => {
        this.onSelectedEmmiter.emit(prod);
      }, 0);
}
SO i can not use (click) cause i need the option to open new tab in right click.
Using return [`/x/x/] or navigate work only the first time

标签: angulartypescriptangular-routerlink

解决方案


你用错了。我应该是(click)="onSelect(id)"(假设onSelect应该响应使用过的点击)。除此之外,回答为什么它一直被调用:

这是因为每次在更改检测周期中都会评估特定绑定。这样的循环在每个鼠标/键盘事件上作为异步任务完成启动。


推荐阅读