如何在angularjs2中的指令中使用某个组件

时间:2016-11-21 04:46:55

标签: angular

我写了一个指令,我想听一个click事件。当click事件触发时,我可以修改某个组件的属性。 但我发现我无法调用该组件。因为@AfterViewInit?我可以在AfterViewInit中使用@HostListener吗?

import {Directive, ElementRef, Renderer,OnInit, ViewChild,AfterViewInit, HostListener} from '@angular/core';
import {TextInputComponent} from '../common/textInput/text_input.conponent';
@Directive({
selector:'[custum-input]'
})
export class MyDirectives implements OnInit,AfterViewInit{
constructor(private el:ElementRef,private renderer:Renderer){}
 @ViewChild(TextInputComponent) private textInput:TextInputComponent;
 @HostListener('click') onClick() {
   this.highlight('blue');
   this.textInput.isShow=true;
  }
private highlight(color:string){
 this.renderer.setElementStyle(this.el.nativeElement,'backgroundColor',color);
}

0 个答案:

没有答案