我正试图通过这样的viewchild获取指令,从而从组件调用位于我的指令中的公共函数
@ViewChild('myDirective') myDirective;
....
myDirective.nativeElement.myFunction();
但我得到的错误是myFunction不存在。
有没有方法调用指令中的函数?
最佳答案
DEMO - How to call Directive's function from Component > AA>
1)希望您正在导入我的指令。
import {myDirective} from './Directive';
2)
@ViewChild(myDirective) vc:myDirective; ///<<<@@@removed '' from ('myDirective')
3)
ngAfterViewInit(){
this.vc.myFunction(); ///<<@@@ no need to use nativeElement
}
4)或某个按钮的点击事件
click(){
this.vc.myFunction();
}