angular - 如何将动态点击事件绑定到 *ngFor 中的动态模板 ref/var?
问题描述
如何动态地将模板引用/变量添加到文件输入以及绑定该按钮的单击事件。
我检查了许多其他我不理解的堆栈问题,因为没有完整或正确的答案。
所以,我决定提出我自己的问题。请帮我解决这个问题。
提前致谢 :)
我的代码看起来像这样
<div *ngFor="let image of resBgImgProps; let i = index">
<input (change)="bgImg($event)" type="file" accept="image/*" #??? />
<button (click)='???.click()'>Select</button>
</div>
解决方案
您不需要模板引用变量的动态名称;您可以使用固定名称。循环的每次迭代ngFor
都会有它自己的变量实例。以下是您将如何使用该名称#fileInput
:
<div *ngFor="let image of resBgImgProps; let i = index">
<input #fileInput (change)="bgImg($event)" type="file" accept="image/*" />
<button (click)="fileInput.click()">Select</button>
</div>
推荐阅读
- python - 使用最小二乘法逼近点云(Python)
- mongodb - how to get slice of type struct defined inside another struct using go and mongodb
- c# - C#位图uri源UI冻结
- xamarin - 我在 iOS 中更改了我的应用程序包标识符。我现在需要创建新的配置文件吗?
- python - 在 Python 3.6+ 中实现描述符的正确方法是什么?
- php - 如何在发送到服务器端或客户端之前加密我网站上的数据?
- google-sheets - 查询 Google 电子表格中的所有工作表以将所有数据放入单个工作表中
- vb.net - 如何在vb.net的图片框中打印txt
- django - 我的Django网站中的SystemCheckError,为什么会出现这些中间件错误?
- c# - Azure AD 与 Web API 的不记名令牌身份验证无法正常工作,并引发错误,因为“此请求的授权已被拒绝”。