javascript - 如何在打字稿中动态创建输入类型文本
问题描述
我知道在 javascript 中,我可以通过以下方式创建一个元素。
var input = document.createElement("input");
input.type = "text";
input.className = "css-class-name"; // set the CSS class
document.body.appendChild(input);
在我的 Angular 应用程序中,我从ngOnInit
app.component.ts 中的 http 服务获取了一些数组值。
我有一个基于数组值动态创建输入类型文本的场景。如果数组值为 5,则应创建五个输入类型。
打字稿可以吗?或者我也应该在打字稿中使用上面的代码?
处理这种情况的最佳方法是什么?
解决方案
创建一组表单控件。堆栈闪电战
inputs: FormControl[] = [];
ngOnInit() {
this.myService.getNumberOfInputs().subscribe(count => {
for (let i = 0; i < count; i++) {
this.inputs.push(new FormControl(''));
}
});
}
<input type="text" *ngFor="let input of inputs" [formControl]="input">
推荐阅读
- python - 在散景图中表示点的 x 坐标
- docker - ENV/ARG 命令未在 Dockerfile 中填充变量
- angular - 如何选择 Observable 或常规值
- xamarin.forms - Xamarin.Forms:从另一个应用程序调用应用程序时处理 URI 参数
- ruby - 猴子补丁:define_method 是否优先于绑定?
- list - terraform:通过模块传递列表,得到“错误:......应该是一个列表”
- select - 从 MaxScript 中的对象列表创建一个数组并将它们添加到新图层
- nlp - 如何提高 Rasa NLU 中意图的置信度得分?
- python - 使用 sqlalchemy/alembic 为现有数据库创建“零状态”迁移,并为该现有数据库“伪造”零迁移
- regex - 匹配非 HTML 标签的正则表达式