\n \u003Cp class=\"text-neutral-200 text-xs\">\n {{ transactionCost.credits }}\n \u003C/p>\n\u003C/UTooltip>\n```\n\n``` \n\u003CNuxtLayout>\n \u003CUApp :toaster=\"{ position: 'top-right' }\">\n \u003CNuxtPage />\n \u003C/UApp>\n\u003C/NuxtLayout>\n```\n\n\n### Description\n\nThe `app.vue` is already using the `UApp`. When I try to add a `UTooltip` inside the modal, it throw an error.\n\n### Additional context\n\n_No response_\n\n### Logs\n\n```\nUncaught (in promise) Error: Injection `Symbol(TooltipProviderContext)` not found. Component must be used within `TooltipProvider`\n```",[3180,3183,3186],{"name":3181,"color":3182},"bug","d73a4a",{"name":3184,"color":3185},"needs reproduction","CB47CF",{"name":3161,"color":3162},2801,"[v3][UTooltip] `UTooltip` inside `UModal` causing error","2025-02-06T15:28:30Z","https://github.com/nuxt/ui/issues/2801",0.6421014,{"description":3193,"labels":3194,"number":3200,"owner":3138,"repository":3138,"state":3140,"title":3201,"updated_at":3202,"url":3203,"score":3204},"### Environment\n\n------------------------------\n- Operating System: Linux\n- Node Version: v22.3.0\n- Nuxt Version: 3.17.5\n- CLI Version: 3.25.1\n- Nitro Version: 2.11.12\n- Package Manager: pnpm@9.15.4\n- Builder: -\n- User Config: compatibilityDate, devtools, future, vite, modules, css, runtimeConfig\n- Runtime Modules: @nuxt/ui@3.1.3, nuxt-svgo@4.2.2, @nuxt/image@1.10.0\n- Build Modules: -\n------------------------------\n\n### Reproduction\n\n```ts\n\u003Cscript setup lang=\"ts\">\nconst page = useState('movie-page', () => 1)\nconst data = useState\u003CMovie[]>('movie-data', () => [])\n\nconst { pending, execute } = await useFetch\u003CListResponse\u003CMovie>>('/api/tmdb/discover/movie', {\n query: {\n page,\n },\n async onResponse({ response }) {\n data.value.push(...response._data.results)\n },\n immediate: false,\n})\n\nif (data.value.length === 0)\n execute()\n\nconst pageContainer = useTemplateRef('pageContainer')\n\nonMounted(() => {\n const scrollContainer = document.getElementById('scrollContainer')\n scrollContainer?.addEventListener('scroll', () => {\n if (!pending.value && pageContainer.value && window.innerHeight + 1000 > pageContainer.value?.getBoundingClientRect().bottom) {\n page.value++\n }\n })\n})\n\u003C/script>\n```\n\n### Describe the bug\n\nI want to create an infinite scrollable page. To do so, I need to store the received data of `useFetch` in an array.\nSince I want to be able to navigate to another page and go back, without refetching all data, I use `useState`.\n\nHowever, when navigating back, `useFetch` would trigger again (with previous page value) if I use `immediate: true.` Therefore `immediate: false` is set and we manually call execute to fetch data on first page load.\n\nin the scroll listener, `page++` is called. The strange thing is:\n* On first page load, this is enough to retrigger fetching data. Not needing to call `execute()` manually.\n* Once navigated away and returning to the page, the `page` value is increased by the event listener (so still working), but `useFetch` does not trigger anymore.\n\n### Additional context\n\n_No response_\n\n### Logs\n\n```shell-script\n\n```",[3195,3198],{"name":3196,"color":3197},"pending triage","E99695",{"name":3184,"color":3199},"FBCA04",32467,"inconsistent behaviour useFetch","2025-06-24T21:21:12Z","https://github.com/nuxt/nuxt/issues/32467",0.6432044,{"description":3206,"labels":3207,"number":3212,"owner":3138,"repository":3138,"state":3140,"title":3213,"updated_at":3214,"url":3215,"score":3216},"### Environment\r\n\r\nNuxt project info: 12:42:28\r\n\r\n------------------------------\r\n- Operating System: `Linux`\r\n- Node Version: `v16.16.0`\r\n- Nuxt Version: `3.2.3`\r\n- Nitro Version: `2.2.3`\r\n- Package Manager: `npm@8.11.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://github.com/beyer-johannes/use-fetch-pending-initial-true\r\n\r\n### Describe the bug\r\n\r\nUsing useFetch with {immediate:false} option is initial true.\r\n\r\n```\r\nconst { pending, execute } = useFetch(\r\n \"https://api.chucknorris.io/jokes/random\",\r\n {\r\n immediate: false,\r\n }\r\n);\r\n\r\n// pending.value === true without execute call.\r\n```\r\n\r\nIt should be `false` initial to make it useable. If its true, and I use it in a `\u003Cinput type=\"text\" :disabled=\"pending\"/>`, the input field is disabled on first visible moment, which's a wrong ux.\r\n\r\n### Additional context\r\n\r\nI tested vueUse's isFetching property in a empty vue environment and it is false per default.\r\n\r\n```\r\nimport { useFetch } from \"@vueuse/core\";\r\n\r\nconst { isFetching, execute } = useFetch(\r\n \"https://api.chucknorris.io/jokes/random\",\r\n {\r\n immediate: false,\r\n }\r\n);\r\n\r\n// isFetching.value === false\r\n```\r\n\r\n### Logs\r\n\r\n_No response_",[3208,3211],{"name":3209,"color":3210},"3.x","29bc7f",{"name":3196,"color":3197},19333,"UseFetch pending is initial true with {immediate: false} option","2023-11-15T20:53:47Z","https://github.com/nuxt/nuxt/issues/19333",0.64641494,{"description":3218,"labels":3219,"number":3222,"owner":3138,"repository":3138,"state":3140,"title":3223,"updated_at":3224,"url":3225,"score":3226},"### Environment\n\n- Operating System: `Linux`\r\n- Node Version: `v16.17.1`\r\n- Nuxt Version: `3.2.2`\r\n- Nitro Version: `2.2.2`\r\n- Package Manager: `npm@8.15.0`\r\n- Builder: `vite`\r\n- User Config: `runtimeConfig`, `modules`, `css`, `app`, `experimental`, `imports`, `nitro`, `typescript`\r\n- Runtime Modules: `@pinia/nuxt@0.4.7`, `@nuxtjs/tailwindcss@6.4.1`\r\n- Build Modules: \n\n### Reproduction\n\n\r\n```\r\n// before refresh call asyncData a pending must be false\r\nconst { pending: isLoadingOne, refresh: fetchOne } = useFetch('https://jsonplaceholder.typicode.com/todos/1', { immediate: false });\r\n\r\n// before refresh call asyncData a pending must be false | perhaps a controversial case\r\nconst { pending: isLoadingTwo, refresh: fetchTwo } = await useFetch('https://jsonplaceholder.typicode.com/todos/2', { immediate: false });\r\n```\r\n\r\nSee full code: https://stackblitz.com/edit/nuxt-starter-9uxzmd?file=app.vue\n\n### Describe the bug\n\nUntil the request is forcibly invoked, it is assumed that the waiting status should be false.\n\n### Additional context\n\n_No response_\n\n### Logs\n\n_No response_",[3220,3221],{"name":3209,"color":3210},{"name":3196,"color":3197},19218,"`useFetch/useAsyncData`: BUG: when `immediate: false`, then `pending` is `true` before call `execute/refresh` (must to be false)","2023-12-20T16:49:10Z","https://github.com/nuxt/nuxt/issues/19218",0.64952004,{"labels":3228,"number":3236,"owner":3138,"repository":3138,"state":3140,"title":3237,"updated_at":3238,"url":3239,"score":3240},[3229,3232,3233],{"name":3230,"color":3231},"documentation","5319e7",{"name":3209,"color":3210},{"name":3234,"color":3235},"dx","C39D69",13805,"on initial client side load with `server: false`, useFetch does not await data fetching","2024-12-26T14:55:04Z","https://github.com/nuxt/nuxt/issues/13805",0.6568172,{"description":3242,"labels":3243,"number":3245,"owner":3138,"repository":3138,"state":3140,"title":3246,"updated_at":3247,"url":3248,"score":3249},"### Environment\n\n- Operating System: `Darwin`\n- Node Version: `v22.13.0`\n- Nuxt Version: `3.16.0`\n- CLI Version: `3.23.0`\n- Nitro Version: `2.11.6`\n- Package Manager: `pnpm@9.15.4`\n- Builder: `-`\n- User Config: `compatibilityDate`, `devtools`\n- Runtime Modules: `-`\n- Build Modules: `-`\n\n\n### Reproduction\n\nhttps://stackblitz.com/edit/github-thrqeevv?file=server%2Fapi%2Furi%2Findex.post.ts\n\n### Describe the bug\n\nI noticed an inconsistency in the blocking behavior of `useFetch` when the method is set to `POST`, where if the user is navigating to a page which uses the same component, the data change is rendered before the suspense of the new page resolves.\n\nIn the provided example, I have 2 `useFetch` calls inside `await Promise.all`. The expected behavior would be that the data on the page visually changes only after both of the promises are resolved - just like when you're navigating from `index.vue` to any of the pages in `dynamic/[uri].vue`.\nHowever, this is not the case when going from `dynamic/[uri].vue` to `dynamic/[uri].vue`.\n\nI suppose this is because we don't include the `body` of the request in the hash for the payload key and thus, the key is the same for both the old & the new request, which updates the data that's currently being rendered on the page.\nhttps://github.com/nuxt/nuxt/blob/f6bbb8e87c0d48b5e45d959715b1f119be75635a/packages/nuxt/src/app/composables/fetch.ts#L248\n\nWould this be an ok fix, or can you see any problems with that?\n\n### Additional context\n\n_No response_\n\n### Logs\n\n```shell-script\n\n```",[3244],{"name":3196,"color":3197},31428,"Inconsistent blocking behavior of `useFetch` when the method is `POST`","2025-03-24T23:20:41Z","https://github.com/nuxt/nuxt/issues/31428",0.6623219,["Reactive",3251],{},["Set"],["ShallowReactive",3254],{"$fTRc1wZytZ_XrK4EfJfei_Sz-An4H4Yy6syhVxH_PVJc":-1,"$feqngyFA0ObB2qMxzOqqr_E5eSbQl6QZSySpkBYXwhQs":-1},"/nuxt/ui/3602"]