Прикрепить событие ко всем элементам определенного класса - PullRequest
0 голосов
/ 01 октября 2018

Я хотел бы добавить в свой компонент список событий, который будет запускаться для всех элементов, которые имеют определенный класс.

Они сгенерированы сторонним компонентом, поэтому я не могу прикрепить его в том месте, где они были созданы.

Я хотел бы эффективно сделать эквивалент следующего оператора jquery, но в угловомгде .day это класс.

$(document).on('mousedown','.day',function(jsEvent){ 

});

Спасибо

1 Ответ

0 голосов
/ 01 октября 2018

Вы можете использовать директиву для подключения прослушивателя:

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

@Directive({
  selector: '.day'
})
export class DayDirective {

    @HostListener('mousedown', ['$event'])
    yourFunction(event: Event): void { ... }

}

Чтобы подключить директиву, вы добавляете ее в модуль, который ее требует.Это может быть модуль приложения, общий модуль или функциональный модуль.

import { NgModule } from '@angular/core';

@NgModule({
  declarations: [
    DayDirective,
  ],
  ...
})
export class YourModule {}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...