You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Angular 5 实现选中侧边导航列表项的console.log输出

解决Angular动态导航项点击时打印选中项的问题

我明白你的问题啦——现在点击每个动态生成的列表项都会打印整个apps数组,你需要的是只打印当前选中的那一项对吧?咱们只需要做两处小修改就能搞定:

第一步:修改HTML模板的点击事件绑定

在你的<mat-list-item>标签里,把当前循环的app实例作为参数传递给ispisi方法:

<mat-nav-list *ngIf="menuService.apps">
  <mat-list-item (click)="menuService.ispisi($event, app)" *ngFor="let app of menuService.apps">
    {{app.REGISTARSKI_BROJ}}
  </mat-list-item>
</mat-nav-list>

第二步:更新服务中的ispisi方法

在MenuService里,修改ispisi方法,新增一个参数来接收选中的app,然后打印这个参数即可:

ispisi(e, selectedApp: Applications) {
  e.preventDefault();
  console.log(selectedApp); // 现在只会打印你点击的那一项了
  this.router.navigate(['table']);
}

为什么这样有效?

原来的代码里,ispisi方法只是打印this.apps——也就是整个数组的引用。现在我们把*ngFor循环里的每个app实例直接传递给方法,这样方法就能精准拿到你点击的那一个对象,而不是整个数组啦。

内容的提问来源于stack exchange,提问作者Aleksa Camilovic

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 09:48:48