如何在FormArray内的响应式表单中仅提交指定字段值
解决FormArray提交时仅保留指定字段的问题
嗨,这个问题其实很好解决!因为FormArray的value会默认返回所有表单控件的字段,所以我们只需要在提交时手动过滤掉不需要的Quantity字段就行啦。
你可以修改你的onSubmit方法,通过map遍历FormArray的每一项数据,只提取你需要的ingredient_id和price字段:
onSubmit(form: FormGroup){ // 遍历rows数组,只保留需要的字段 const filteredRows = this.addForm.get('rows').value.map(row => ({ ingredient_id: row.ingredient_id, price: row.price })); const Data = { values: filteredRows }; console.log(Data); }
这样处理后,控制台打印的Data里就只会包含ingredient_id和price,不会出现Quantity字段了。
需要注意的是,要确保你提取的字段名和表单控件中定义的name完全一致,避免拼写错误导致取不到值哦。
内容的提问来源于stack exchange,提问作者Joseph
相关产品推荐
相关产品推荐

