Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 类中所有元素将函数绑定到事件的角度方式_Jquery_Angular_Events_Event Handling - Fatal编程技术网

Jquery 类中所有元素将函数绑定到事件的角度方式

Jquery 类中所有元素将函数绑定到事件的角度方式,jquery,angular,events,event-handling,Jquery,Angular,Events,Event Handling,使用jquery,我们可以执行以下操作 $(.some-class).click(function() { alert('Hello!!');}); 有了Angular2/Angular4,我知道我们可以 (click)="alert('Hello!!');" 但这意味着,我必须对每个元素都这样做 有没有办法将相同的方法分配给具有相同类的所有元素 编辑:我不想按类选择元素,而是将相同的函数绑定到具有相同类的所有元素的单击事件。您可以按如下方式执行此操作 import { Component

使用jquery,我们可以执行以下操作

$(.some-class).click(function() { alert('Hello!!');});
有了Angular2/Angular4,我知道我们可以

(click)="alert('Hello!!');" 
但这意味着,我必须对每个元素都这样做

有没有办法将相同的方法分配给具有相同类的所有元素


编辑:我不想按类选择元素,而是将相同的函数绑定到具有相同类的所有元素的单击事件。

您可以按如下方式执行此操作

import { Component, Directive, ElementRef, HostListener } from '@angular/core';

@Directive({
  selector: '.some-class'
})
export class SomeClassDirective {
  constructor(private el: ElementRef) { }
  @HostListener('click') onClick() {
    console.log('Hello');
  }
}

@Component({
  selector: 'my-app',
  template: `<h1>Hello {{name}}</h1>
  <div class='some-class' >added some-class css class attribute</div>
  `
})
export class AppComponent { 
  name = 'Angular'; 
}
从'@angular/core'导入{Component,Directive,ElementRef,HostListener};
@指示({
选择器:'.some类'
})
导出类SomeClassDirective{
构造函数(私有el:ElementRef){}
@HostListener('click')onClick(){
log('Hello');
}
}
@组成部分({
选择器:“我的应用程序”,
模板:`Hello{{name}}
添加了一些类css类属性
`
})
导出类AppComponent{
名称='角度';
}
检查这个


希望这有帮助

不,这个问题不是关于选择,而是关于将事件绑定到类而不是元素。谢谢,这正是我想要的。下面是使用两个按钮的相同示例: