\n \u003C/UFormField>\n\n \u003CUFormField label=\"File\" name=\"file\">\n \u003CUInput type=\"file\" />\n \u003C/UFormField>\n\n \u003CUButton type=\"submit\"> Submit \u003C/UButton>\n \u003C/UForm>\n\u003C/template>\n```",[3145,3148],{"name":3146,"color":3147},"question","d876e3",{"name":3149,"color":3150},"v3","49DCB8",4637,"nuxt","ui","closed","File field gets cleared, bug?","2025-08-21T08:42:25Z","https://github.com/nuxt/ui/issues/4637",0.7075179,{"description":3160,"labels":3161,"number":3166,"owner":3152,"repository":3153,"state":3154,"title":3167,"updated_at":3168,"url":3169,"score":3170},"### Environment\n\n- Operating System: `Windows_NT`\n- Node Version: `v22.18.0`\n- Nuxt Version: `4.1.1`\n- CLI Version: `3.28.0`\n- Nitro Version: `2.12.4`\n- Package Manager: `npm@11.5.2`\n- Builder: `-`\n- User Config: `runtimeConfig`, `modules`, `devtools`, `supabase`, `css`, `routeRules`, `compatibilityDate`\n- Runtime Modules: `@nuxt/ui-pro@3.3.3`, `@vueuse/nuxt@13.9.0`, `@nuxtjs/supabase@1.6.2`, `nuxt-charts@0.2.3`\n- Build Modules: `-`\n\n\n### Is this bug related to Nuxt or Vue?\n\nNuxt\n\n### Package\n\nv3.x\n\n### Version\n\nv3.3.3\n\n### Reproduction\n\nhttps://codesandbox.io/p/devbox/zen-euclid-cf554n\n\n### Description\n\nThe problem occurs because the UFileUpload component likely contains a button element that doesn't have an explicit type attribute, causing it to default to type=\"submit\", which triggers form submission.\n\n### Additional context\n\n```\n\u003Ccomponent\n :is=\"variant === 'button' ? 'button' : 'div'\"\n ref=\"dropzoneRef\"\n :type=\"variant === 'button' ? 'button' : undefined\" // 👈 add this maybe?\n :role=\"variant === 'button' ? undefined : 'button'\"\n :data-dragging=\"isDragging\"\n :class=\"ui.base({ class: props.ui?.base })\"\n :tabindex=\"interactive && !disabled ? 0 : -1\"\n @click=\"interactive && !disabled && open()\" \n @keydown.prevent\n @keyup.enter.space=\"interactive && !disabled && open()\"\n>\n```\n\n### Logs\n\n```shell-script\n\n```",[3162,3165],{"name":3163,"color":3164},"bug","d73a4a",{"name":3149,"color":3150},4935,"UFileUpload with variant button inside form will cause UForm submit","2025-09-09T14:55:29Z","https://github.com/nuxt/ui/issues/4935",0.708874,{"description":3172,"labels":3173,"number":3176,"owner":3152,"repository":3153,"state":3154,"title":3177,"updated_at":3178,"url":3179,"score":3180},"### Environment\n\n- Operating System: Darwin\n- Node Version: v23.5.0\n- Nuxt Version: 3.17.6\n- CLI Version: 3.25.1\n- Nitro Version: 2.11.13\n- Package Manager: pnpm@9.15.4\n- Builder: -\n- User Config: devtools, typescript, modules, css, future, compatibilityDate\n- Runtime Modules: @nuxt/ui@3.2.0, @nuxt/eslint@1.5.1\n- Build Modules: -\n\n### Is this bug related to Nuxt or Vue?\n\nNuxt\n\n### Version\n\nv3.2.0\n\n### Reproduction\n\nhttps://github.com/harkor/nuxt-ui-form-errors-reproduction\n\n[stackblitz](https://stackblitz.com/github/harkor/nuxt-ui-form-errors-reproduction)\n\n### Description\n\nIf I write this\n\n```ts\nformRef.value?.setErrors([\n {\n name: \"pathForACustomError\",\n message: \"This is a custom error message.\",\n },\n ]);\n```\n\nThe error will be set in formRef?.getErrors('pathForACustomError')\n\nBut if I watch a state like this and clear the error\n\n```ts\nwatch(\n () => state.hello,\n () => {\n console.log(\"Hello changed:\", state.hello);\n formRef.value?.clear(\"pathForACustomError\");\n },\n);\n```\n\nIf the UFormField component have a name (the component change the value), formRef?.getErrors('pathForACustomError') will not be cleared, it will for 1 or two tick but after that, the error is still there.\n\nIn my reproduction you have 3 URadioGroup\n\nHello, World and Hi\n\nIf you change\n- \"Hello\", error not cleared\n- \"World\", error cleared\n- \"Hi\", error cleared\n\nWhat change between these 3 fields\n- \"Hello\" have a name attribute in the UFormField\n- \"World\" don't have a name attribute in the UFormField\n- \"Hi\" have a name in attribute BUT with a @change will clear \"again\" the error\n\n**PS: Don't forget to click on \"Set custom error\" button before change values on URadioGroup's components**\n\nBonus: Since version 3.2.0, I have a typescript error for getErrors(path) with typecheck enabled\n\n**Expectations**\n- First UFormField \"hello\" clear the error when state change with a watch\n- No typescript error on getErrors\n\n### Additional context\n\n_No response_\n\n### Logs\n\n```shell-script\nERROR 11:39:08 AM\n ERROR(vue-tsc) Argument of type '\"pathForACustomError\"' is not assignable to parameter of type 'undefined'.\n FILE /home/projects/xoriallzvx.github/app/components/MyForm.vue:127:36\n\n 125 | \u003C/UFormField>\n 126 | \u003Cdiv\n > 127 | v-if=\"!!formRef?.getErrors('pathForACustomError').length\"\n | ^^^^^^^^^^^^^^^^^^^^^\n 128 | class=\"text-red-400\"\n 129 | >\n 130 | {{ formRef?.getErrors(\"pathForACustomError\")[0]?.message }}\n\n ERROR(vue-tsc) Argument of type '\"pathForACustomError\"' is not assignable to parameter of type 'undefined'.\n FILE /home/projects/xoriallzvx.github/app/components/MyForm.vue:130:29\n\n 128 | class=\"text-red-400\"\n 129 | >\n > 130 | {{ formRef?.getErrors(\"pathForACustomError\")[0]?.message }}\n | ^^^^^^^^^^^^^^^^^^^^^\n 131 | \u003C/div>\n 132 | \u003C/UForm>\n 133 | \u003C/template>\n\n[vue-tsc] Found 2 errors. Watching for file changes.\n```",[3174,3175],{"name":3163,"color":3164},{"name":3149,"color":3150},4455,"SetErrors with a ref and clear this error from a watcher don't work + TS Error","2025-09-12T16:04:27Z","https://github.com/nuxt/ui/issues/4455",0.7100394,{"description":3182,"labels":3183,"number":3190,"owner":3152,"repository":3152,"state":3154,"title":3191,"updated_at":3192,"url":3193,"score":3194},"### Environment\r\n\r\n------------------------------\r\n- Operating System: Darwin\r\n- Node Version: v21.6.1\r\n- Nuxt Version: 3.10.3\r\n- CLI Version: 3.10.1\r\n- Nitro Version: 2.8.1\r\n- Package Manager: bun@1.0.26\r\n- Builder: -\r\n- User Config: extends, modules, runtimeConfig, pinia, image, routeRules, app, i18n, security\r\n- Runtime Modules: @nuxt/ui@^2.14.1\r\n- Build Modules: -\r\n------------------------------\r\n\r\n### Reproduction\r\n\r\nhttps://stackblitz.com/edit/github-4rnoff-spccez?file=app.vue\r\n\r\n### Describe the bug\r\n\r\nUsing tabs as shown in the docs throws multiple warnings:\r\n\r\n> [Vue warn] Computed is still dirty after getter evaluation, likely because a computed is mutating its own dependency in its getter. State mutations in computed getters should be avoided. Check the docs for more details: https://vuejs.org/guide/essentials/computed.html#getters-should-be-side-effect-free\r\n\r\n### Additional context\r\n\r\n_No response_\r\n\r\n### Logs\r\n\r\n_No response_",[3184,3187],{"name":3185,"color":3186},"3.x","29bc7f",{"name":3188,"color":3189},"upstream","E8A36D",25943,"Tabs throw warning: Computed is still dirty after getter evaluation","2024-02-25T13:24:32Z","https://github.com/nuxt/nuxt/issues/25943",0.7107134,{"description":3196,"labels":3197,"number":3202,"owner":3152,"repository":3152,"state":3154,"title":3203,"updated_at":3204,"url":3205,"score":3206},"### Environment\r\n\r\n```\r\nNuxi 3.3.3\r\n\r\nRootDir: /project/home/benjaminrobinet/workspace\r\nNuxt project info:\r\n\r\n------------------------------\r\n- Operating System: `Linux`\r\n- Node Version: `v16.17.0`\r\n- Nuxt Version: `3.3.3`\r\n- Nitro Version: `2.3.2`\r\n- Package Manager: `pnpm@7.1.0`\r\n- Builder: `vite`\r\n- User Config: `-`\r\n- Runtime Modules: `-`\r\n- Build Modules: `-`\r\n------------------------------\r\n```\r\n\r\n### Reproduction\r\n\r\nhttps://codesandbox.io/p/sandbox/reactivity-issue-dlxt09\r\n\r\nThe page `index.vue` is mutating the reactive object, and the component `StateComponent.vue` is displaying the value and using it to apply a CSS class using a computed.\r\n\r\n### Describe the bug\r\n\r\nHere we have a useState method that is mutated to another value on the setup of a page. The template reacts well when using `{{ stateValue }}`, but not in computed, template binding, etc...\r\n\r\nI added a button to mutate the state on a nextTick, and it works as expected. That's probably not a useState issue, as I have the same issue with Pinia.\r\n\r\nEDIT: On HMR, it works fine.\r\n\r\nThe expected behavior is that everything should be correctly reactive to that reactive object.\r\n\r\n### Additional context\r\n\r\n_No response_\r\n\r\n### Logs\r\n\r\n_No response_",[3198,3199],{"name":3185,"color":3186},{"name":3200,"color":3201},"pending triage","E99695",20130,"Reactivity / hydratation issue on render with reactive object","2023-04-07T13:50:33Z","https://github.com/nuxt/nuxt/issues/20130",0.71217924,{"description":3208,"labels":3209,"number":3220,"owner":3152,"repository":3152,"state":3154,"title":3221,"updated_at":3222,"url":3223,"score":3224},"### Version\n\n[v1.4.2](https://github.com/nuxt.js/releases/tag/v1.4.2)\n\n### Reproduction link\n\n[http://no-link](http://no-link)\n\n### Steps to reproduce\n\nI think I found an unsafe factor when I typed '$nuxt' into the console that exposed some data, like the store, all the router and configurations, or whether it could be encapsulated like the vueJs\n\n### What is expected ?\n\nNo relevant data is displayed\n\n### What is actually happening?\n\nwhen I typed '$nuxt' into the console that exposed some data\n\n### Additional comments?\n\nI don't know if this is a loophole. Forgive my poor English,\n\n\u003C!--cmty-->\u003C!--cmty_prevent_hook-->\n\u003Cdiv align=\"right\">\u003Csub>\u003Cem>This bug report is available on \u003Ca href=\"https://cmty.app/nuxt\">Nuxt\u003C/a> community (\u003Ca href=\"https://cmty.app/nuxt/nuxt.js/issues/c7701\">#c7701\u003C/a>)\u003C/em>\u003C/sub>\u003C/div>",[3210,3213,3216,3217],{"name":3211,"color":3212},"discussion","538de2",{"name":3214,"color":3215},"stale","ffffff",{"name":3200,"color":3201},{"name":3218,"color":3219},"2.x","d4c5f9",3858,"exposed some data","2023-01-22T15:30:05Z","https://github.com/nuxt/nuxt/issues/3858",0.71546155,{"description":3226,"labels":3227,"number":3232,"owner":3152,"repository":3153,"state":3154,"title":3233,"updated_at":3234,"url":3235,"score":3236},"### Environment\n\n- Operating System: Darwin\n- Node Version: v22.10.0\n- Nuxt Version: 3.16.2\n- CLI Version: 3.25.0\n- Nitro Version: 2.11.9\n- Package Manager: npm@10.9.0\n- Builder: -\n- User Config: nitro, build, compatibilityDate, devtools, ssr, css, modules, i18n\n- Runtime Modules: @nuxt/ui@3.1.0, @nuxt/test-utils@3.17.2, @nuxt/image@1.10.0, @nuxt/icon@1.12.0, @nuxt/fonts@0.11.2, @nuxt/eslint@1.3.0, @nuxtjs/i18n@9.5.3, @nuxtjs/leaflet@1.2.6, @pinia/nuxt@0.11.0\n- Build Modules: -\n\n\n### Is this bug related to Nuxt or Vue?\n\nNuxt\n\n### Version\n\nv3.16.2\n\n### Reproduction\n\nhttps://codesandbox.io/p/devbox/fancy-river-42j5xw?workspaceId=ws_GgeGxunRZmD7bdWXHYL2Xk\n\n### Description\n\nWhile the `USlideOver` is active, it is not possible to interact with the background elements, even if `:overlay=\"false\"`. This seems counter-intuitive and [formerly classified as a bug in v2](https://github.com/nuxt/ui/issues/1402#issuecomment-2872304863).\n\n### Additional context\n\ntested with both 3.1.1 and 3.1.0\n\nA workaround is setting `\"pointer-events: auto\"` in the background element styles, which seems to enable all pointer events.\n\n### Logs\n\n```shell-script\n\n```",[3228,3229,3230],{"name":3163,"color":3164},{"name":3149,"color":3150},{"name":3231,"color":3215},"triage",4135,"Slideover blocks background interaction even with `overlay=false`","2025-05-13T12:59:56Z","https://github.com/nuxt/ui/issues/4135",0.7157289,{"description":3238,"labels":3239,"number":3244,"owner":3152,"repository":3153,"state":3154,"title":3245,"updated_at":3246,"url":3247,"score":3248},"### Environment\n\n- Operating System: Windows_NT\n- Node Version: v22.14.0\n- Nuxt Version: 3.16.2\n- CLI Version: 3.25.0\n- Nitro Version: 2.11.9\n- Package Manager: npm@10.9.2\n- Builder: -\n- User Config: compatibilityDate, devtools, modules, css, colorMode, build, runtimeConfig, app, lodash, vite, router, nitro\n- Runtime Modules: @pinia/nuxt@0.9.0, pinia-plugin-persistedstate/nuxt@4.2.0, @nuxt/test-utils/module@3.17.2, @vueuse/nuxt@11.3.0, nuxt-\ncountdown@1.2.0, nuxt-lodash@2.5.3, nuxt-monaco-editor@1.3.1, @nuxt/eslint@1.3.0, @nuxt/eslint@1.3.0, @nuxt/fonts@0.11.1, @nuxt/icon@1.12\n.0, @nuxt/image@1.10.0, @nuxt/scripts@0.11.6, @nuxt/test-utils@3.17.2, @nuxt/ui@3.1.0\n- Build Modules: -\n\n### Is this bug related to Nuxt or Vue?\n\nNuxt\n\n### Version\n\nv3.1.0\n\n### Reproduction\n\nhttps://codesandbox.io/p/devbox/fervent-ptolemy-6njy2z?workspaceId=ws_SZ9iN2xj3x4VbwxN8x8baL&embed=1&file=%2Fapp%2Fpages%2Findex.vue\n\n### Description\n\nYou cannot dynamically add/remove columns, top toggle should control the visibility of the Status column\n\n### Additional context\n\n_No response_\n\n### Logs\n\n```shell-script\n\n```",[3240,3241,3242],{"name":3163,"color":3164},{"name":3149,"color":3150},{"name":3188,"color":3243},"78bddb",4024,"Dynamic table columns","2025-06-30T13:20:36Z","https://github.com/nuxt/ui/issues/4024",0.71643406,{"description":3250,"labels":3251,"number":3254,"owner":3152,"repository":3153,"state":3154,"title":3255,"updated_at":3256,"url":3257,"score":3258},"### Environment\n\n- Operating System: Linux\n- Node Version: v22.14.0\n- Nuxt Version: 3.17.3\n- CLI Version: 3.25.1\n- Nitro Version: 2.11.12\n- Package Manager: npm@11.3.0\n- Builder: -\n- User Config: app, build, colorMode, compatibilityDate, debug, devtools, fonts, future, hooks, i18n, icon, imports, modules, nitro, routeRules, runtimeConfig, security, ssr, sourcemap, css, telemetry, vite\n- Runtime Modules: @nuxt/eslint@1.3.1, @pinia/nuxt@0.11.0, @vueuse/nuxt@13.2.0, @nuxtjs/i18n@9.5.4, nuxt-security@2.2.0, @nuxt/ui@3.1.2\n- Build Modules: -\n\n### Is this bug related to Nuxt or Vue?\n\nNuxt\n\n### Version\n\nv3.1.2\n\n### Reproduction\n\nhttps://codesandbox.io/p/devbox/sharp-christian-kzdxt9?file=%2Fapp%2Fpages%2Findex.vue\n\n### Description\n\nStarting from v3.1.2, using the [built-in v-model-modifiers](https://vuejs.org/guide/essentials/forms.html#modifiers) produces type errors. They are still working tho, so its only a type issue.\n\nReproduction:\n1. Open provided link\n2. Run `pnpx nuxi typecheck`\n\n### Additional context\n\n_No response_\n\n### Logs\n\n```shell-script\n➜ workspace git:(master) ✗ pnpx nuxi typecheck\nPackages: +1\n+\nProgress: resolved 1, reused 1, downloaded 0, added 1, done\nℹ Nuxt Icon server bundle mode is set to local 11:09:23 AM\n✔ Nuxt Icon discovered local-installed 2 collections: lucide, simple-icons 11:09:25 AM\nℹ Running with compatibility version 4 nuxt 11:09:25 AM\napp/pages/index.vue:8:22 - error TS2353: Object literal may only specify known properties, and 'modelModifiers' does not exist in type '{ readonly onBlur?: ((event: FocusEvent) => any) | undefined; readonly onChange?: ((event: Event) => any) | undefined; readonly \"onUpdate:modelValue\"?: ((payload: number) => any) | undefined; ... 24 more ...; modelValue?: number | undefined; } & VNodeProps & AllowedComponentProps & ComponentCustomProps'.\n\n8 \u003CUInput v-model.number=\"myNumber\" type=\"number\" />\n ~~~~~~~\n\napp/pages/index.vue:9:22 - error TS2353: Object literal may only specify known properties, and 'modelModifiers' does not exist in type '{ readonly onBlur?: ((event: FocusEvent) => any) | undefined; readonly onChange?: ((event: Event) => any) | undefined; readonly \"onUpdate:modelValue\"?: ((payload: string) => any) | undefined; ... 24 more ...; modelValue?: string | undefined; } & VNodeProps & AllowedComponentProps & ComponentCustomProps'.\n\n9 \u003CUInput v-model.lazy=\"myText\" />\n ~~~~~\n\n\nFound 2 errors in the same file, starting at: app/pages/index.vue:8\n\n\n ERROR Process exited with non-zero status (2) 11:09:41 AM\n\n at R._waitForOutput (/root/.cache/pnpm/v3/tmp/dlx-4483/node_modules/.pnpm/nuxi@3.25.1/node_modules/nuxi/dist/chunks/main.mjs:508:13)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)\n at async Object.run (/root/.cache/pnpm/v3/tmp/dlx-4483/node_modules/.pnpm/nuxi@3.25.1/node_modules/nuxi/dist/chunks/typecheck.mjs:91:9)\n at async runCommand$1 (/root/.cache/pnpm/v3/tmp/dlx-4483/node_modules/.pnpm/nuxi@3.25.1/node_modules/nuxi/dist/shared/nuxi.BlFGnQYG.mjs:1767:16)\n at async runCommand$1 (/root/.cache/pnpm/v3/tmp/dlx-4483/node_modules/.pnpm/nuxi@3.25.1/node_modules/nuxi/dist/shared/nuxi.BlFGnQYG.mjs:1758:11)\n at async runMain$1 (/root/.cache/pnpm/v3/tmp/dlx-4483/node_modules/.pnpm/nuxi@3.25.1/node_modules/nuxi/dist/shared/nuxi.BlFGnQYG.mjs:1896:7) \n\n\n\n ERROR Process exited with non-zero status (2)\n```",[3252,3253],{"name":3163,"color":3164},{"name":3149,"color":3150},4166,"Built-in v-model modifiers produce type errors with v3.1.2","2025-05-22T12:51:25Z","https://github.com/nuxt/ui/issues/4166",0.71678877,{"description":3260,"labels":3261,"number":3263,"owner":3152,"repository":3152,"state":3154,"title":3264,"updated_at":3265,"url":3266,"score":3267},"### Environment\n\nIt is happening in two environments of mine\n\n------------------------------ \n- Operating System: Linux\n- Node Version: v18.20.3\n- Nuxt Version: 3.13.2\n- CLI Version: 3.14.0\n- Nitro Version: 2.9.7\n- Package Manager: npm@10.2.3\n- Builder: -\n- User Config: -\n- Runtime Modules: -\n- Build Modules: -\n------------------------------\n- Operating System: Windows_NT\n- Node Version: v22.3.0\n- Nuxt Version: 3.13.2\n- CLI Version: 3.14.0\n- Nitro Version: 2.9.7\n- Package Manager: yarn@1.22.22\n- Builder: -\n- User Config: -\n- Runtime Modules: -\n- Build Modules: -\n------------------------------\n\n### Reproduction\n\nhttps://stackblitz.com/edit/nuxt-starter-ltkw9t?file=app%2Fpages%2Findex.vue&file=app%2Fcomponents%2Fsidebar.vue\n\n### Describe the bug\n\nI have a page and a component pointing to some data on a composable, and they point to it in the exact same way. But in one place, it is reactive, and in another place it is not. On component it works fine, but not on page. There it is not reactive.\n\n### Additional context\n\n_No response_\n\n### Logs\n\n_No response_",[3262],{"name":3200,"color":3201},29610,"Reactivity with different behaviour in Pages vs Components","2024-10-25T10:30:34Z","https://github.com/nuxt/nuxt/issues/29610",0.7169337,["Reactive",3269],{},["Set"],["ShallowReactive",3272],{"$fTRc1wZytZ_XrK4EfJfei_Sz-An4H4Yy6syhVxH_PVJc":-1,"$f0ite1Atmud8NXGhkp4-4ZtNVPjLPqXxAwblW4VmjleU":-1},"/nuxt/ui/4238"]