在角度9的按钮内重命名函数的名称

问题描述

更改选择功能... 根据选择的选项,我想动态地重命名“ functionX”。 前端

<select [(ngModel)]="selectedOp" (change)="selectedOption()">
   <option value={{op}} *ngFor="let op of Options">{{op}}</option>>
</select>

<button id="btnID" type="submit" (click)="functionX()">
 Button
</button>

后端

我一直在尝试使用js ...

Options = ['Function1','Function2'];

selectedOp;

selectedOption(){
    switch (this.selectedOp) {
      case 'Function1':
          const btn = document.getElementById('btnID');
          btn.setAttribute('(click)','function1()');
      break;
      case 'Function2':
          const btn = document.getElementById('btnID');
          btn.setAttribute('(click)','function2()');
      break
}

然后发生此错误...

ERROR DOMException: Failed to execute 'setAttribute' on 'Element': '(click)' is not a valid attribute name..

如果你们知道更好的方法,我很感谢您的分享:)

解决方法

selectedOption(){
switch (this.selectedOp) {
  case 'Function1':
      this.funciton1();
  break;
  case 'Function2':
      this.function2();
  break
}