首页 > 其他 > 详细

[Angular Directive] 3. Handle Events with Angular 2 Directives

时间:2016-12-21 07:42:59      阅读:218      评论:0      收藏:0      [点我收藏+]

@Directive can also listen to events on their host element using @HostListener. This allows you to add behaviors that react to user input and update or modify properties on the element without having to create a custom component.

 

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

@Directive({
  selector: [clickable]
})
export class ClickableDirective {
  @Input(clickable) text;
  @HostBinding() get innerText() {
    if(this.text) {
      return this.text;
    }
  }
  @HostListener(click, [$event]) onClick(event) {
    console.log(event); //MouseEvent
    this.text = event.clientX;
  }
}

We can add HostListener on the host element, and get ‘$event‘ pass to our handler function ‘onClick‘. Inside the function we are able to change the innerText of the directive.

 

[Angular Directive] 3. Handle Events with Angular 2 Directives

原文:http://www.cnblogs.com/Answer1215/p/6206207.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!