Я получаю эту ошибку:
ERROR Error: Uncaught (in promise): TypeError: value.forEach is not a function
TypeError: value.forEach is not a function
at FormArray.patchValue.
Я получаю данные из Laravel и хочу, чтобы эти данные отображались в FormArray.
Мой код выглядит так:
this.http.get("http://data_dink" + '/' + event.value)
.toPromise().then(data =>
{
console.log(data);
this.getSelectedServiceData = data;
console.log(this.getSelectedServiceData.service);
this.addForm.get('services').patchValue(this.getSelectedServiceData.service);
});
data
переменная (ответ на запрос получения) имеет такой объект:
{
"msg":"Service Information",
"service":{
"id":1,
"name":"Web Development",
"description":"Test per web development",
"price":"200.00",
"created_at":"2020-05-04T03:07:28.000000Z",
"updated_at":"2020-05-06T03:07:28.000000Z",
"view_service":{
"href":"api\/v1\/service\/1",
"method":"GET"
}
}
}
FormArray, построенный из этого объекта:
{
"msg":"List of all services",
"services":[
{
"id":1,
"name":"Web Development",
"description":"Test per web development",
"price":"200.00",
"created_at":"2020-05-04T03:07:28.000000Z",
"updated_at":"2020-05-06T03:07:28.000000Z"
},
{
"id":2,
"name":"Java",
"description":"test per java",
"price":"100.00",
"created_at":"2020-05-20T03:07:57.000000Z",
"updated_at":"2020-05-20T03:07:57.000000Z"
}
]
}