我有一个表单,其中有一个多选字段。从所接收的数据中填充该选择字段的选项,例如, 任务对象。
[
{"id":7,"title":"Seven","project":1},
{"id":8,"title":"Eight","project":2},
{"id":9,"title":"Nine","project":2}
]
和我的选择字段:
<ion-list>
<ion-item>
<ion-label>Select tasks</ion-label>
<ion-select formControlName="tasks" multiple="true" (ionChange)="arrangeSelectedTasks()">
<ion-option *ngFor="let task of tasks" value={{task}}>{{task.title}}</ion-option>
</ion-select>
</ion-item>
</ion-list>
功能
arrangeSelectedTasks(){
for(let task of this.addScenarioForm.value.tasks){
this.selectedTasks.push(task)
}
console.log("selectedTasks: ", this.selectedTasks)
}
需要一组任务对象
value={{task.id}}
通过["7", "8"]
和value={{task}}
passes ["[object Object]", "[object Object]"]
这会导致我的后端抛出BAD REQUEST错误。我想从价值中传递[{..},{..}]
这样的东西。
如何实现这一目标?
答案 0 :(得分:1)
使用 .map
selectedTasks:any = [];
arrangeSelectedTasks(){
this.addScenarioForm.value.tasks.map(task => {
this.selectedTasks.push({task.id});
});
console.log("selectedTasks: ", this.selectedTasks)
}