Angular 如果事件已完成,如何运行方法?

Angular 如果事件已完成,如何运行方法?,angular,Angular,我尝试创建一个小的webapp来上传图片 <input type="file" id="imageUpload" name="image" (change)="imageToList()" accept="image/*" capture> 我收到错误,无法读取null的属性“文件”。如果我在GoogleCrome中运行命令行,我会看到文件与choosen文件一起存在 这看起来像是一个计时问题,但我不知道如何解决它。Angular2中有没有一种方法可以在侦听器之后运行方法

我尝试创建一个小的webapp来上传图片

    <input type="file" id="imageUpload" name="image" (change)="imageToList()" accept="image/*"  capture>
我收到错误,无法读取null的属性“文件”。如果我在GoogleCrome中运行命令行,我会看到文件与choosen文件一起存在


这看起来像是一个计时问题,但我不知道如何解决它。Angular2中有没有一种方法可以在侦听器之后运行方法?或者还有其他类似的用户案例吗?

最简单的方法-使用生命周期挂钩可能是ngAfterContentInit或ngAfterViewInit:

正确的方法-使用@ViewChild:

更新:抱歉,您可能根本不需要在@Component中引用您的输入。试一试

(change)="imageToList($event)"
imageToList(event: any): void{
    console.log(event);
}
(change)="imageToList($event)"
imageToList(event: any): void{
    console.log(event);
}