Как избавиться от вложенного массива data при передаче Api Resource во вью компонент с помощью Inertia?
Я использую Laravel 9, Jetstream, Inertia, Vue 3.
Я создал АПИ ресурс для модель Project и пытаюсь их получить во ВЬЮ компоненте с помощью Инерции.
$projects = ProjectResource::collection(Project::get());
return Inertia::render('Project/Edit', compact('projects'));
В Vue в пропсе «project» я получаю вложенный массив «data», и в нем уже проекты.
projects:
data:Array[2]
0:Object
1:Object
Но это неправильно. Мне не нужен вложенный массив data. Мне сразу нужны модели в пропсе, как это передается во вью без использования Инерции. Т.е. должно быть так
projects:
0:Object
1:Object
Я не хочу получать доступ в vue через «projects.data» Как добиться нормальной передачи данных используя апи ресурсы?
Ответы (1 шт):
Автор решения: Alex
→ Ссылка
В документации написано решение Laravel Resources API Нужно прописать JsonResource::withoutWrapping(); в провайдере