这是我的模板:
<ng-template #template>
<input #newimg type="file" class="col-md-10" (change)="fileChange($event)"/>
</ng-template>
我在#newimg
内部ng-template
时无法引用它(如果我将ng-template
更改为div
,则可以正常工作!)
@ViewChild('newimg') img: ElementRef; //doesnt work
我需要在上传图片后将其值设置为空,但始终未定义。
答案 0 :(得分:2)
<ng-template>
未添加到DOM中,当应用程序运行时,它仅存在于JavaScript代码中。只有在使用例如*ngFor
或*ngIf
之类的结构指令标记时,才会在DOM中创建内容,并实例化绑定,组件,指令......。
因此,如果没有标记,则不会有任何#template
来查询。