2016-10-05 30 views

回答

3

岡特的答案是正確的,但你可以用一個HostListener指令使用的更多的全球意義(如喜歡/喜歡按鈕)。

@Directive({ 
selector: '.favorite' 
}) 
class FavoriteDirective(){ 
@HostListener('click', ['$event.target']) onClick(_element) { 
    ... 
    } 
} 
2

@HostListener('click', ['$event'])是監聽主機元素本身的事件。沒有其他用例可以使用。

一個例外是全局事件,例如您使用全局事件目標,如window:,document:body

要監聽任意元素使用

<span class="someClass" (click)="someAction($event)"></span>