input - 角度 5,保持输入值并将其添加到 JS 对象
问题描述
我正在用 Angular 5 制作一个 Web 工具,以帮助创建新的 XML。
我在传递输入值并将它们同时保持在同一输入中时遇到了麻烦。
我有一个带有 ngSubmit 事件的表单,它使用 ngForm 的引用作为参数
<form class="form-group" (ngSubmit)="createSimpleTypeList(f)" #f="ngForm" >
<div class="container">
<div class="row">
<div class="col-sm-12" >
<button class="btn btn-danger flex ">Construir Json!</button>
</div>
</div>
</div>
<hr>
<div class="container" *ngFor="let type of objSimpleType;let i =index">
<hr>
<div class="row">
<div class="col-sm-3">
<input type="text" [(ngModel)]="type.name" name="nameType"/>
<br>
Inserte el nombre del tipo:
</div>
<div class="col-sm-3">
<input type="text" [(ngModel)]="type.type" name="type"/>
<br>
Inserte el tipo:
</div>
<div class="col-sm-2">
<input type="number" [(ngModel)]="type.min" name="min"/>
<br>
Inserte minimo:
</div>
<div class="col-sm-2">
<input type="number" [(ngModel)]="type.max" name="max"/>
<br>
Inserte maximo:
</div>
<div class="col-sm-2">
<input type="checkbox" name="number" /> Numero?
</div>
</div>
</div>
<hr>
</form>
这是 createSimpleTypeList 方法
console.log(form.value.nameType);
this.objSimpleType.push({
'-name': form.value.nameType,
'xsd:restriction': {
'-base': form.value.type,
'xsd:minLength': {
'-value': form.value.min
},
'xsd:maxLenght': {
'-value': form.value.max
}
}
});
this.typeList.emit(form.value.nameType);
this.sharedNameSpace.emit(this.namespace);
我遇到的问题是,我还没有找到一种方法将新项目推送到 objSimpleType 中,而不擦除输入的值,如果我设法不擦除输入的值,那么表单的值将不会推送。
这就是它的外观。输入现在如何工作
这就是我需要的
输入应该如何 我仍然是角度的新手,我非常感谢您的帮助。
解决方案
现在我已经找到了解决方案,我在上面的代码中有两个错误。
首先我的逻辑没有很好地执行,我需要使用唯一的 ID,并动态调用它们。
其次,我调用它们时遇到了麻烦,看了很多之后,我发现我可以用括号[]调用一个Json的参数。
“form.value['nameType' + this.i]”——我需要这样的东西。
推荐阅读
- c# - 如何通过 C# windows 应用程序发送数据并使用 TCP/IP 协议从 android 客户端接收数据
- twitter-bootstrap - Bootstrap 轮播幻灯片跳跃
- vb.net - 在不覆盖第一个输入数据的情况下将用户输入数据添加到 word doc 时遇到问题
- office365connectors - 连接器在审查中停留了 7 个月没有回复
- javascript - 生成客户端即用型 Javascript 代码的命令数量最少?
- sql - 如何在结果末尾显示平均值
- javascript - 如何拆分选择框选项的值并使用 jquery 或 javascript 在两个不同的输入字段中传递它?
- youtube-api - YouTube 的 Data APi V3 search.list 在“项目”中没有返回视频
- linux - 从安装在 Linux 上的 Jenkins 运行 Windows 批处理文件
- java - 我需要一个可以检测字符串是否有代码和注释的正则表达式