Javascript 在html元素和js函数上添加可选更改事件

Javascript 在html元素和js函数上添加可选更改事件,javascript,angular,typescript,events,onchange,Javascript,Angular,Typescript,Events,Onchange,我有一个用于多种类型的角度弹出组件 对于类型A和B,我在页脚中有一个“操作”部分,用于获取结果并关闭弹出窗口。对于类型C,我想在选中复选框时关闭弹出窗口(因此,这里我需要使用changeevent,但对于类型a和B,这是不可用的) html: 我在模板上添加了(change)=“onActionSelected(row)”事件,仅用于caseC,如果源类型不是它,则需要在方法中进行检查 我想知道是否存在一种更优雅的解决方案,可以将更改事件动态添加到复选框中,并从方法中删除验证。您可以向更改事件添

我有一个用于多种类型的角度弹出组件

对于类型A和B,我在页脚中有一个“操作”部分,用于获取结果并关闭弹出窗口。对于类型C,我想在选中复选框时关闭弹出窗口(因此,这里我需要使用
change
event,但对于类型a和B,这是不可用的)

html:

我在模板上添加了
(change)=“onActionSelected(row)”
事件,仅用于case
C
,如果源类型不是它,则需要在方法中进行检查


我想知道是否存在一种更优雅的解决方案,可以将更改事件动态添加到复选框中,并从方法中删除验证。

您可以向更改事件添加一个条件,假设行对象包含源属性:

(change)="row.source !== 'C' && onActionSelected(row)"

AKA Javascript它可以工作,谢谢:d
onActionSelected(row: any): void {
   if (this.source !== 'C') {
      return;
   }

   const data = this.dataSource.data;
   const value = Helpers.getValue(data);

   this.dialogRef.close(value);
}
(change)="row.source !== 'C' && onActionSelected(row)"