Formbuilder выбрать значение в качестве объекта - PullRequest
0 голосов
/ 26 апреля 2018

У меня есть форма, в которой у меня есть поле множественного выбора. Опции для этого поля выбора заполняются из полученных данных, например, Задачи объекты.

[
{"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. Я хочу передать что-то вроде [{..},{..}] из значения.

Как этого добиться?

1 Ответ

0 голосов
/ 26 апреля 2018

Используйте его .map

selectedTasks:any = [];

arrangeSelectedTasks(){
         this.addScenarioForm.value.tasks.map(task => {
           this.selectedTasks.push({task.id});
    });
        console.log("selectedTasks: ", this.selectedTasks)
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...