// #docplaster import {Directive, Output, ElementRef, EventEmitter} from '@angular/core'; @Directive({selector:'[myClick]'}) export class MyClickDirective { // #docregion my-click-output-1 @Output('myClick') clicks = new EventEmitter(); // @Output(alias) propertyName = ... // #enddocregion my-click-output-1 constructor(el: ElementRef){ el.nativeElement .addEventListener('click', (event:Event) => { this._toggle = !this._toggle; this.clicks.emit(this._toggle ? 'Click!' : ''); }); } _toggle = false; } // #docregion my-click-output-2 @Directive({ // #enddocregion my-click-output-2 selector:'[myClick2]', // #docregion my-click-output-2 outputs:['clicks:myClick'] // propertyName:alias }) // #enddocregion my-click-output-2 export class MyClickDirective2 { clicks = new EventEmitter(); constructor(el: ElementRef){ el.nativeElement .addEventListener('click', (event:Event) => { this._toggle = !this._toggle; this.clicks.emit(this._toggle ? 'Click2!' : ''); }); } _toggle = false; }