api-platform / api-platform/create-client

"Cannot stringify arbitrary non-POJOs" error in Nuxt projects

Open
#382 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
TypeScript
Stars
376
Forks
132
PR merge metrics
No merged PRs in 30d

Description

**API Platform version(s) affected**: 3.2.18

**Description**
Clients generated for Nuxt will fail with: "Cannot stringify arbitrary non-POJOs"

**How to reproduce**
- Create an Entity e.g. "Animal"
- Create a Nuxt project
- Create a client (e.g. `yarn create @api-platform/client https://localhost/ . --generator nuxt --resource animal` )
- Load https://localhost/animal
You'll get a message saying: "Cannot stringify arbitrary non-POJOs"

**Possible Solution**
- One solution is to edit `nuxt.config.js` and add the following:
```
experimental: {
renderJsonPayloads: false,
},
```
- Another possible solution is to edit `./nuxt/stores/animal/list.ts` and add `shallowRef()` to `setHubUrl` function:
```
setHubUrl(hubUrl?: URL) {
this.hubUrl = shallowRef(hubUrl);
},
```
- Another solution is to edit `./composables/api.ts` and add `shallowRef() to all `onResponse()` functions.

**Additional Context**
This is occurring with all projects using Nuxt 3.4 or later.
More info at: https://nuxt.com/blog/v3-4#payload-enhancements

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.