角2+在组件内检测是否分配了点击侦听器

时间:2019-07-12 11:19:40

标签: angular

我正在创建一个可重用的组件,该组件将舍入的图像缩略图显示为内容。我想在此组件中检测开发人员是否已为其分配了单击侦听器,并对其做了些微的更改。如果开发人员在组件上分配了cursor: pointer,则基本上添加(click)=anyClickCallbackFunction()样式。

问题是,如何从组件内部读取此信息?

1 个答案:

答案 0 :(得分:2)

为此,您虽然没有使用它,但仍需要在组件中输出click,然后检查存在多少observers

export class MycompComponent implements OnInit {

  @Output() click : EventEmitter<any> = new EventEmitter<any>();

  hasHandler : boolean;

  ngOnInit() {
    this.hasHandler = this.click.observers.length > 0;
  }

}

请参阅工作示例here