这样做可以吗?
//template file
<input *ngFor="let elem in elements" [myDirective]="elem"
(keyup.enter)="onEnter(myDirective)">
//.ts file
onEnter(dir: MyDirective){
//access myDirective instanse here
}
我知道我可以通过@ViewChildren做到这一点,但我想确保直接通过还可以吗?
答案 0 :(得分:2)
在您的指令中,确保设置exportAs
:
@Directive({
selector: '[myDirective]',
exportAs: 'myDirective'
})
然后,您可以在模板中获得对它的引用:
<input *ngFor="let elem in elements" [myDirective]="elem" #test="myDirective"
(keyup.enter)="onEnter(test)">
在这里我将其称为test
,但您可以随心所欲地对其进行命名