Angular 5 - 从组件生成click事件

时间:2018-03-01 03:45:25

标签: angular angular5

我想在某些条件下从组件内生成click事件。 在AngularJs中,我曾经做过:

angular.element(document.querySelector('#someid')).click();

在Angular 2/4/5中,我发现 ElementRef ,不推荐使用。他们说,使用渲染器,但没有找到这样的例子来生成点击事件。

如何在Angular 2/4/5中执行此操作?

1 个答案:

答案 0 :(得分:0)

您可以使用renderer2 listen方法。这可以通过以下行完成:

constructor(el: ElementRef, renderer: Renderer2) {
    renderer.listen(el.nativeElement, 'click', event => console.log(event));
  }

https://angular.io/api/core/Renderer2

如果您需要在模板文件中获取确切元素,可以使用 #someid

创建参考

然后在.ts文件中使用:

 @ViewChild('someid) someid: ElementRef

然后再次使用renderer2传递 someid.nativeElement

希望这有帮助!

另一种选择是使用:https://angular.io/api/core/HostListener