在Angular 2上动态创建按钮

时间:2017-09-27 00:44:16

标签: angular angular2-forms

我正试图找到一种方法,在使用Angular 2点击另一个按钮时动态创建按钮。

基本思想是点击原始按钮后会返回一个数组。然后,对于数组中的每个元素,我需要创建一个新按钮。

如果有人能指出我正确的方向,我真的很感激。

谢谢!希望你有一个美好的一天:)

1 个答案:

答案 0 :(得分:0)

  

模板

<button (click)="pushToArray()">Main Button</button>
<!-- Dynamic Arrays -->
<ng-container *ngIf="dynArr.length > 0">
 <button *ngFor="let i of dynArr" (click)="buttonClicked(i) [innerHTML]="'Dynamic Button: ' + i"></button>
</ng-container>
  

成分<​​/ P>

dynArr = [];
nextNum = 0;

pushToArray() {
 this.dynArr.push(nextNum);
 nextNum++;
}

buttonClicked(index: number) {
 // logic for each dynamic button click;
 // buttons distinguishable by 'index' value
}

这不是一个理想的代码。如果你可以指定你想用它做什么,可能会重构。但鉴于你的要求的细节,这应该做的工作。