Nativescript Angular:如何在点击事件中将按钮视图作为参数传递?

Nativescript Angular: How to pass a button view as a parameter in tap event ?

My Nativescript Angular 应用动态 returns 数据作为项目列表。对于每个项目,我使用 *ngFor 创建一个带有点击事件的按钮。我想将按钮本身作为参数传递,因为我需要在点击时添加 cssClass。但是我不能使用 ViewChild,因为数据是动态的。我该如何实现?

<Button *ngFor="let item of items" [text]="item.name" (tap)="select(item, buttonObject ? )></Button>


select(item, buttonObject) {
  let button = <View>buttonObject.nativeElement;
  ...
}

感谢您的帮助。 :)

这可以使用局部变量来完成:

<Button #myButton *ngFor="let item of items"
     [text]="item.name" (tap)="select(item, myButton)></Button>


select(item, buttonObject) {
   let button = buttonObject;
}

对于将来寻找相同答案的其他人,除了@HabibKazemi 提供的解决方案之外,为了获取父视图中的每个按钮,只需执行以下操作:

select(button, item) {
  let parent = button.parent;
  let count = parent.getChildrenCount();
  for (var c = 0; c < count; c++) {
    let btn = parent.getChildAt(c);
    btn.color = "black";
  }
  button.color = "white;
}