\n\n3) Navigate to `pages/index.vue`, modify the `console.log()` and save\n\n### Describe the bug\n\nThe previous [issue](https://github.com/nuxt/nuxt/issues/25214) was closed, but the error remains even in the latest Nuxt version.\n\nThe error will disappear if you add `lazy:true` option\n\n```\nconst { data } = await useFetch('https://jsonplaceholder.typicode.com/todos/1', {\n lazy: true\n})\n```\n\nAs you can see, both `app.vue` `layouts/default.vue` are wrapped with `divs` as it was suggested in the previous issue but we still get the bug.\n\nIs adding `lazy` option is the best workaround as for now?\n\n\u003Cimg width=\"500\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/ca5929e7-f84b-4d0f-a57b-e1cf38c34813\" />\n\n### Additional context\n\n_No response_\n\n### Logs\n\n```shell-script\nvirtual:nuxt:/home/gaisinskii/nuxt3-parent-node-null/.nuxt/routes.mjs:16 [Vue warn]: Unhandled error during execution of component update \n at \u003CRouterView name=undefined route=undefined > \n at \u003CNuxtPage> \n at \u003CDefault ref=Ref\u003C Proxy(Object)聽{鈥 > > \n at \u003CAsyncComponentWrapper ref=Ref\u003C Proxy(Object)聽{鈥 > > \n at \u003CLayoutLoader key=\"default\" layoutProps= {ref: RefImpl} name=\"default\" > \n at \u003CNuxtLayoutProvider layoutProps= {ref: RefImpl} key=\"default\" name=\"default\" ... > \n at \u003CNuxtLayout> \n at \u003CApp key=4 > \n at \u003CNuxtRoot>\nwarn$1 @ runtime-core.esm-bundler.js:51\nlogError @ runtime-core.esm-bundler.js:263\nhandleError @ runtime-core.esm-bundler.js:255\ncallWithErrorHandling @ runtime-core.esm-bundler.js:201\nflushJobs @ runtime-core.esm-bundler.js:408\nPromise.then\nqueueFlush @ runtime-core.esm-bundler.js:322\nqueueJob @ runtime-core.esm-bundler.js:317\neffect2.scheduler @ runtime-core.esm-bundler.js:5448\ntrigger @ reactivity.esm-bundler.js:253\nendBatch @ reactivity.esm-bundler.js:311\nnotify @ reactivity.esm-bundler.js:597\ntrigger @ reactivity.esm-bundler.js:571\nset value @ reactivity.esm-bundler.js:1448\nfinalizeNavigation @ vue-router.mjs:3498\n(anonymous) @ vue-router.mjs:3363\nPromise.then\npushWithRedirect @ vue-router.mjs:3330\npush @ vue-router.mjs:3255\nreplace @ vue-router.mjs:3258\naddRoutes @ virtual:nuxt:/home/gaisinskii/nuxt3-parent-node-null/.nuxt/routes.mjs:16\n(anonymous) @ virtual:nuxt:/home/gaisinskii/nuxt3-parent-node-null/.nuxt/routes.mjs:21\n(anonymous) @ client:34\n(anonymous) @ client:208\n(anonymous) @ client:183\nqueueUpdate @ client:183\nawait in queueUpdate\n(anonymous) @ client:884\nhandleMessage @ client:882\nonMessage @ client:299\n(anonymous) @ client:429\ndispatchEvent @ .localservice@runtime.5a421e5b.js:26\n_handleMessage @ .localservice@runtime.5a421e5b.js:26\n_0x3963e2 @ .localservice@runtime.5a421e5b.js:26Understand this warningAI\nruntime-dom.esm-bundler.js:51 Uncaught (in promise) TypeError: Cannot read properties of null (reading 'parentNode')\n at parentNode (runtime-dom.esm-bundler.js:51:30)\n at ReactiveEffect.componentUpdateFn [as fn] (runtime-core.esm-bundler.js:5410:11)\n at ReactiveEffect.run (reactivity.esm-bundler.js:225:19)\n at ReactiveEffect.runIfDirty (reactivity.esm-bundler.js:263:12)\n at callWithErrorHandling (runtime-core.esm-bundler.js:199:33)\n at flushJobs (runtime-core.esm-bundler.js:408:9)\n```",[3139,3142,3145,3148],{"name":3140,"color":3141},"dx","C39D69",{"name":3143,"color":3144},"bug","d73a4a",{"name":3146,"color":3147},"vite","3574D1",{"name":3149,"color":3150},"馃敤 p3-minor","FBCA04",31493,"nuxt","open","TypeError: Cannot read properties of null (reading 'parentNode') with useFetch","2025-03-21T17:04:23Z","https://github.com/nuxt/nuxt/issues/31493",0.7117988,{"description":3159,"labels":3160,"number":3164,"owner":3152,"repository":3152,"state":3153,"title":3165,"updated_at":3166,"url":3167,"score":3168},"### Environment\n\n- Operating System: Linux\n- Node Version: v20.19.1\n- Nuxt Version: 3.17.3\n- CLI Version: 3.25.1\n- Nitro Version: 2.11.12\n- Package Manager: npm@10.8.2\n- Builder: -\n- User Config: compatibilityDate, devtools\n- Runtime Modules: -\n- Build Modules: -\n\n### Reproduction\n\nMinimal reproduction project: https://stackblitz.com/edit/nuxt-starter-1diciww7\n\n1. Open https://stackblitz.com/edit/nuxt-starter-1diciww7\n3. Click the \"Cart\" link.\n3. Navigate back to the \"Home\" link.\n4. Observe the console error: Uncaught TypeError: Cannot read properties of null (reading 'foo').\n\n### Describe the bug\n\nWhen using v-once on a useAsyncData data, navigating away and returning to the page triggers an error because data.value becomes null unexpectedly.\n\n### Additional context\n\nThe same code works without errors in Nuxt 3.16.2\n\n### Logs\n\n```shell-script\nindex.vue:8 Uncaught (in promise) TypeError: Cannot read properties of null (reading 'foo')\n```",[3161],{"name":3162,"color":3163},"pending triage","E99695",32154,"`v-once` with `useAsyncData` causes \"Cannot read properties of null\" error upon navigation in 3.17.0+","2025-05-19T09:08:47Z","https://github.com/nuxt/nuxt/issues/32154",0.71499103,{"description":3170,"labels":3171,"number":3179,"owner":3152,"repository":3180,"state":3181,"title":3182,"updated_at":3183,"url":3184,"score":3185},"## 馃悰 Describe the bug\n\nThe `useResizable` composable crashes with `TypeError: Cannot read properties of null (reading 'size')` when `storageData.value` is `null`.\n\n## 馃敆 Reproduction\n\nThis happens when:\n- First time visiting (empty localStorage)\n- Corrupted localStorage\n- Private browsing mode with storage disabled\n- Browser storage restrictions\n- Storage quota exceeded\n\n## 馃摫 Environment\n\n- **Device**: Desktop (Windows 10+)\n- **Browser**: Chrome 140.0.0\n- **Nuxt UI Pro**: Latest version\n- **Page**: `/chats/:id()` (any page using resizable components)\n\n## 馃搳 Error Details\n\n**Stack trace:**\n```\n./node_modules/@nuxt/ui-pro/dist/runtime/composables/useResizable.js:40:34 (size.get)\n get: () => storageData.value.size,\n```\n\n**Error message:**\n```\nTypeError: Cannot read properties of null (reading 'size')\n```\n\n**Component involved:**\n```\n./node_modules/@nuxt/ui-pro/dist/runtime/components/DashboardSidebar.vue:115:29\n :style=\"{ '--width': `${size || 0}${dashboardContext.unit}` }\"\n```\n\n## 馃挕 Expected behavior\n\nThe composable should handle `null` storage gracefully with a fallback value for the size property.\n\n## 馃敡 Suggested Fix\n\n```javascript\n// Current problematic code (line 40):\nget: () => storageData.value.size,\n\n// Suggested fix:\nget: () => storageData.value?.size ?? defaultSize,\n```\n\nWhere `defaultSize` should be the initial/default size value for the resizable component.\n\n## 馃搱 Impact\n\n- **Occurrences**: 47 reported instances\n- **Users affected**: 2+ users confirmed\n- **Severity**: High (crashes the page/component)\n- **Frequency**: High on Chrome Windows\n- **Component**: DashboardSidebar (and potentially other resizable components)\n\n## 馃攳 Additional Context\n\nThis error specifically affects the `size` property in the `useResizable` composable, causing the DashboardSidebar to crash when trying to calculate width styles. The error occurs when browsers return `null` for localStorage data, which is not handled safely in the composable.\n\nThis is a separate but related issue to other properties in the same composable (like `collapsed`) that have similar null-safety problems.\n\n## 馃毃 Priority\n\nThis should be considered high priority as it affects core dashboard functionality and makes the application unusable for affected users.\n",[3172,3173,3176],{"name":3143,"color":3144},{"name":3174,"color":3175},"v3","49DCB8",{"name":3177,"color":3178},"triage","ffffff",4964,"ui","closed","TypeError in useResizable composable when accessing 'size' property (storageData is null)","2025-09-13T10:59:02Z","https://github.com/nuxt/ui/issues/4964",0.49769777,{"description":3187,"labels":3188,"number":3194,"owner":3152,"repository":3152,"state":3181,"title":3195,"updated_at":3196,"url":3197,"score":3198},"### Environment\r\n\r\n- Operating System: Windows_NT\r\n- Node Version: v20.7.0\r\n- Nuxt Version: 3.7.4\r\n- CLI Version: 3.9.0\r\n- Nitro Version: 2.6.3\r\n- Package Manager: pnpm@8.7.6\r\n\r\n### Reproduction\r\n\r\nhttps://codesandbox.io/p/sandbox/fragrant-bush-m6xj7x?file=%2Fapp.vue%3A1%2C1\r\n\r\n### Describe the bug\r\n\r\nWhen conditionally checking `useAsyncData` for error, that is `error.value !== null`, it doesn't pass, even though (according to type definition) the expected value should be `null` when there is no error. Instead, `undefined` is returned.\r\n\r\n`undefined` in this case is present before the function is run. Further attempts to check the error's value return `null`.\r\n\r\n\r\n\r\n\r\n### Additional context\r\n\r\n_No response_\r\n\r\n### Logs\r\n\r\n_No response_",[3189,3192,3193],{"name":3190,"color":3191},"3.x","29bc7f",{"name":3143,"color":3144},{"name":3149,"color":3150},23411,"Mismatch between value and type definition of error returned by data fetching composables","2023-09-27T13:43:55Z","https://github.com/nuxt/nuxt/issues/23411",0.6805752,{"description":3200,"labels":3201,"number":3202,"owner":3152,"repository":3203,"state":3181,"title":3204,"updated_at":3205,"url":3206,"score":3207},"- [ ] Community profiles (doc & code contributors)\n- [ ] Login GitHub & Socials\n- [ ] Edit on Studio\n",[],1307,"nuxt.com","Main features improvements","2023-07-10T12:41:54Z","https://github.com/nuxt/nuxt.com/issues/1307",0.68734527,{"description":3209,"labels":3210,"number":3215,"owner":3152,"repository":3180,"state":3181,"title":3216,"updated_at":3217,"url":3218,"score":3219},"### Description\n\nThe light mode defaults for Select are pretty good. Not as good for dark mode. How can I at least modify the background and text color of the popup list for dark mode? What is the recommended approach?\n\n\n",[3211,3214],{"name":3212,"color":3213},"question","d876e3",{"name":3174,"color":3175},3595,"How can I improve the dark style of USelect","2025-03-18T20:19:24Z","https://github.com/nuxt/ui/issues/3595",0.69330555,{"description":3221,"labels":3222,"number":3225,"owner":3152,"repository":3152,"state":3181,"title":3226,"updated_at":3227,"url":3228,"score":3229},"### Environment\n\n- Operating System: `Darwin`\r\n- Node Version: `v22.1.0`\r\n- Nuxt Version: `3.12.2`\r\n- CLI Version: `3.12.0`\r\n- Nitro Version: `2.9.6`\r\n- Package Manager: `pnpm@9.1.1`\r\n- Builder: `-`\r\n- User Config: `devtools`, `modules`\r\n- Runtime Modules: `@nuxt/eslint@0.3.13`\r\n- Build Modules: `-`\n\n### Reproduction\n\nGithub: https://github.com/MikeBellika/Async-data-error-reproduction\r\nStackblitz: https://stackblitz.com/~/github.com/MikeBellika/Async-data-error-reproduction\r\n\r\nAfter running the project, head to `/client` and `/server`. On `/client`, the error is blank, while it is `This is a human readable error` on `/server`.\n\n### Describe the bug\n\nWe wrap `useAsyncData` in another function, to provide error handling. The function looks something like this:\r\n```typescript\r\n async function myAsyncData\u003CT>(...args: AsyncArgs\u003CT>) {\r\n const { error, ...rest } = await useAsyncData\u003CT>(...args);\r\n return { error: humanReadableError(error.value), ...rest };\r\n }\r\n```\r\nHowever when we run this on the client, for example with `{server: false}`, `error.value` is null. If we just do `return {error, ...rest }`, we can get the error from the template.\n\n### Additional context\n\n_No response_\n\n### Logs\n\n_No response_",[3223,3224],{"name":3190,"color":3191},{"name":3162,"color":3163},27855,"`error.value` is undefined in composable when using `useAsyncData` on client","2024-06-27T14:28:40Z","https://github.com/nuxt/nuxt/issues/27855",0.6935015,{"description":3231,"labels":3232,"number":3241,"owner":3152,"repository":3152,"state":3181,"title":3242,"updated_at":3243,"url":3244,"score":3245},"### Environment\n\n------------------------------\r\n- Operating System: `Darwin`\r\n- Node Version: `v14.20.0`\r\n- Nuxt Version: `3.0.0-rc.9`\r\n- Nitro Version: `0.5.1`\r\n- Package Manager: `yarn@1.22.19`\r\n- Builder: `vite`\r\n- User Config: `modules`, `css`, `typescript`, `vite`, `build`\r\n- Runtime Modules: `@vueuse/nuxt@9.2.0`, `@nuxtjs/supabase@0.1.25`, `@pinia/nuxt@0.4.2`\r\n- Build Modules: `-`\r\n------------------------------\n\n### Reproduction\n\nNot required\n\n### Describe the bug\n\nThe typing of the Error that is returned from the `useFetch` composable is as as follow `Ref\u003Ctrue | Error | null>` however the actually error returned is not the default Error type and is actually of type `FetchError` ([source](https://github.com/unjs/ohmyfetch/blob/a5ebc970414a46f403f552812a46850adcbc71f7/src/error.ts))\r\n\r\nSo in order to actually get to the extra information of the error casting is required.\n\n### Additional context\n\n_No response_\n\n### Logs\n\n_No response_",[3233,3236,3237,3238],{"name":3234,"color":3235},"types","2875C3",{"name":3190,"color":3191},{"name":3143,"color":3144},{"name":3239,"color":3240},"馃嵃 p2-nice-to-have","0E8A16",14879,"`useFetch()` incorrectly typed error","2023-01-19T17:41:45Z","https://github.com/nuxt/nuxt/issues/14879",0.7018267,{"description":3247,"labels":3248,"number":3250,"owner":3152,"repository":3251,"state":3181,"title":3252,"updated_at":3253,"url":3254,"score":3255},"Thought this issue was related to my project, but I was able to reproduce it, sounds weird but this font won't work on a production build - https://fonts.google.com/specimen/DM+Serif+Display\r\n\r\nI am using the font by mentioning it in my tailwind config \r\n\r\n```ts\r\nimport type { Config } from \"tailwindcss\";\r\n\r\nexport default \u003CPartial\u003CConfig>>{\r\n theme: {\r\n fontFamily: {\r\n sans: [\r\n \"DM Sans\",\r\n \"Avenir Next\",\r\n \"Roboto\",\r\n \"-apple-system\",\r\n \"BlinkMacSystemFont\",\r\n '\"Segoe UI\"',\r\n \"Ubuntu\",\r\n '\"Helvetica Neue\"',\r\n \"Arial\",\r\n '\"Noto Sans\"',\r\n \"sans-serif\",\r\n '\"Apple Color Emoji\"',\r\n '\"Segoe UI Emoji\"',\r\n '\"Segoe UI Symbol\"',\r\n '\"Noto Color Emoji\"',\r\n ],\r\n mono: [\r\n \"Cascadia Code\",\r\n \"ui-monospace\",\r\n \"SFMono-Regular\",\r\n \"Menlo\",\r\n \"Monaco\",\r\n \"Consolas\",\r\n \"Liberation Mono\",\r\n \"Courier New\",\r\n \"monospace\",\r\n ],\r\n display: [\"DM Serif Display\", \"Inter\", \"sans-serif\"],\r\n },\r\n },\r\n plugins: [require(\"@tailwindcss/typography\")],\r\n};\r\n```\r\n\r\nThe first font `DM Sans` is loads correctly, but the display font wont, throws a 404 in production.\r\n\r\nHere's a reproduction - https://github.com/fayazara/nuxt-font-repro\r\n\r\nDev environment screenshot \r\n\r\n\r\n\r\nProduction screenshot\r\n",[3249],{"name":3143,"color":3144},122,"fonts","This font won't work on production: DM Serif Display","2024-05-03T08:11:09Z","https://github.com/nuxt/fonts/issues/122",0.7030178,{"description":3257,"labels":3258,"number":3261,"owner":3152,"repository":3152,"state":3181,"title":3262,"updated_at":3263,"url":3264,"score":3265},"### Environment\r\n\r\nReproduction environment is:\r\n\r\n------------------------------\r\n- Operating System: Linux\r\n- Node Version: v16.14.2\r\n- Nuxt Version: 3.5.2\r\n- Nitro Version: 2.4.1\r\n- Package Manager: npm@7.17.0\r\n- Builder: vite\r\n- User Config: -\r\n- Runtime Modules: -\r\n- Build Modules: -\r\n------------------------------\r\n\r\n### Reproduction\r\n\r\nhttps://stackblitz.com/edit/nuxt-starter-rklf6m?file=app.vue\r\n\r\n### Describe the bug\r\n\r\nWhen we asynchronously use `useRuntimeConfig()` within `useAsyncData()`, it causes an error, but there is no error when it is used synchronously.\r\n\r\nHere is a successful example:\r\n\r\n```ts\r\nconst { data, error } = await useAsyncData('TEST', () => {\r\n useRuntimeConfig();\r\n useRuntimeConfig();\r\n\r\n return 'success';\r\n});\r\n```\r\n\r\nAnd here is an example where an error occurs:\r\n\r\n```ts\r\nfunction sleep(ms: number) {\r\n return new Promise((resolve) => setTimeout(resolve, ms));\r\n}\r\n\r\nconst { data, error } = await useAsyncData('TEST', async () => {\r\n useRuntimeConfig();\r\n await sleep(100);\r\n useRuntimeConfig();\r\n\r\n return 'success';\r\n});\r\n```\r\n\r\n### Additional context\r\n\r\n_No response_\r\n\r\n### Logs\r\n\r\n```shell-script\r\nError: [nuxt] A composable that requires access to the Nuxt instance was called outside of a plugin, Nuxt hook, Nuxt middleware, or Vue setup function. This is probably not a Nuxt bug. Find out more at `https://nuxt.com/docs/guide/concepts/auto-imports#using-vue-and-nuxt-composables`.\r\n```\r\n",[3259,3260],{"name":3190,"color":3191},{"name":3162,"color":3163},21270,"An error occurs when while asynchronously using `useRuntimeConfig()` within `useAsyncData()`","2023-05-31T08:46:35Z","https://github.com/nuxt/nuxt/issues/21270",0.7047593,["Reactive",3267],{},["Set"],["ShallowReactive",3270],{"$fTRc1wZytZ_XrK4EfJfei_Sz-An4H4Yy6syhVxH_PVJc":-1,"$fvLUVzaAPFKXETu-y8Nr4lJ9x-zsrlO4Mv1gBkAIp7EQ":-1},"/nuxt/ui/4963"]