如何在listview中执行多个按钮事件处理onclick

时间:2017-07-25 15:31:59

标签: angular typescript nativescript angular2-nativescript

我在listview中有三个按钮。我需要执行多个按钮单击以触发相同的方法checkInstall。我不知道该怎么做。我添加了相关代码:

html文件:

 <ListView [items]="allAppsList" class="list-group">

   ....... 
   .......
   <StackLayout row="0" col="2">

      <Button  text= "Install" (tap) ="checkInstall($event, myIndex)" > </Button>   
      <Button text= "Open" (tap) ="checkInstall($event1, myIndex)" > </Button>   
      <Button text= "Remove"(tap) ="checkInstall($event2, myIndex)" > </Button>   

  </StackLayout>
 </ListView>  

ts档案:

checkInstall(args: EventData, index : number) : void {

}

执行第一个按钮,checkInstall方法工作正常。但我不知道如何获取第二个和第三个按钮的按钮ID,单独触发checkinstall以处理隐藏和显示按钮等功能。

1 个答案:

答案 0 :(得分:3)

$event是一个有角度的关键词,它有输出发射值,你无法改变它

<Button  text="Install" (tap)="checkInstall($event,1,  myIndex)"> </Button>   
<Button text="Open" (tap)="checkInstall($event, 2, myIndex)" > </Button>   
<Button text="Remove"(tap)="checkInstall($event, 3, myIndex)" > </Button> 

您可以将参数发送到您的方法

checkInstall(args: EventData, buttonIndex: number, index : number) : void {

}
相关问题