角添加按钮内容单击数组

时间:2018-10-05 10:01:02

标签: javascript angular typescript

所以我想要的是,单击按钮,将item.name添加到新数组:

<button (click)="addDistrict(item.name)" *ngFor="let item of items" ion-button>{{item.name}}</button>

myDist = [];

addDistrict(item.name){
   this.myDist.push(item.name)
  }

如何正确执行此操作?

2 个答案:

答案 0 :(得分:1)

您的addDistrict函数的自变量以及从模板传递给它的变量都不正确。

在模板中,您传递的是字符串item.name,然后在函数中再次输入item.name(由于没有包含点的变量名,所以失败)。这应该起作用

addDistrict(name){
    this.myDist.push(name)
}

答案 1 :(得分:1)

@tftd发布的答案是正确的,它也可以解决您的问题。但我会这样写:

在HTML中:

// Will pass the object in to the method like

<button (click)="addDistrict(item)" *ngFor="let item of items" ion-button> 
   {{item.name}}
</button>

并在TS文件中

addDistrict(item){
   // will extract the related key from Object here to push it in array
   this.myDist.push(item.name);
}

StackBlitz Example