\n\nThe schedule page has nested \"child\" routes, which are displayed as \"tabs\" using `\u003CNuxtChild />`.\n\n\u003Cimg width=\"1288\" height=\"664\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/3f1a9bac-7094-4cd6-b5a8-3b6f8d26069f\" />\n\nWhen I visit the schedule route, I want to redirected to `schedule/[day].vue`, with \"day\" param set as \"1\", which would display the schedule for the first day of the event `/en/schedule/1`.\n\nI had to create a custom middleware because it was not supported.\n```js\n// schedule.vue\n\ndefinePageMeta({\n localeRedirect: {\n name: 'schedule-day',\n params: { day: 1 },\n },\n i18n: {\n paths: {\n fr: '/programmation',\n en: '/schedule',\n },\n },\n});\n```\n\n```js\n// localeRedirect.global.ts\n\nexport default defineNuxtRouteMiddleware((to) => {\n const localePath = useLocalePath();\n if (to.meta.localeRedirect && to.matched.length === 1 && !to.redirectedFrom) {\n return navigateTo(localePath(to.meta.localeRedirect));\n }\n});\n```\n\n### Additional information\n\n- [ ] Would you be willing to help implement this feature?\n- [ ] Could this feature be implemented as a module?\n\n### Final checks\n\n- [x] Read the [contribution guide](https://nuxt.com/docs/community/contribution) (The contribution guideline of nuxt-modules/i18n is compliant with Nuxt too).\n- [x] Check existing [discussions](https://github.com/nuxt-modules/i18n/discussions) and [issues](https://github.com/nuxt/nuxt/issues).",[3227],{"name":3187,"color":3188},3801,"Add i18n support to `redirect` inside `definePageMeta`","2025-08-31T09:50:36Z","https://github.com/nuxt-modules/i18n/issues/3801",0.7116905,{"description":3234,"labels":3235,"number":3237,"owner":3176,"repository":3177,"state":3178,"title":3238,"updated_at":3239,"url":3240,"score":3241},"### Environment\n\n------------------------------\n- Operating System: Linux\n- Node Version: v24.2.0\n- Nuxt Version: 4.1.2\n- CLI Version: 3.28.0\n- Nitro Version: 2.12.6\n- Package Manager: npm@11.3.0\n- Builder: -\n- User Config: compatibilityDate, devtools, modules, ssr, nitro, scripts, i18n, app, css, ui, tailwindcss, image, fonts, runtimeConfig, ogImage, experimental, router, vite, site, sitemap, robots\n- Runtime Modules: @nuxt/eslint@1.4.1, @nuxt/fonts@0.11.4, @nuxt/icon@1.14.0, @nuxt/image@1.10.0, @nuxt/scripts@0.11.10, @nuxtjs/tailwindcss@7.0.0-beta.0, @nuxt/ui@3.1.3, @nuxtjs/seo@3.0.3, @nuxtjs/i18n@9.5.5, @nuxtjs/sitemap@7.4.3, @nuxtjs/robots@5.5.0\n- Build Modules: -\n------------------------------\n\n### Reproduction\n\n1) Create a mininmal site with i18n\n2) Use \"prefix\" strategy\n3) Create index page with different languages\n\n### Describe the bug\n\nIf you go to route like \nhttp://localhost:3000/en it works just fine\nbut if you try to add leading slash like \nhttp://localhost:3000/en/\nYou will see 404 error\n\nOn real production site problem persists:\nhttps://eilattickets.com/en - works normally\nhttps://eilattickets.com/en/ - 404\n\nEven worse, This problem prevents you from using prerendered site. For some reason prerendered page being always redirected to url with leading slash, making index page with langage prefix not accessible at all.\n\nAny subroutes after prefix works exactly as they must.\n\n### Additional context\n\n_No response_\n\n### Logs\n\n```shell\n\n```",[3236],{"name":3187,"color":3188},3833,"Leading slash brokes the index page.","2025-09-30T06:22:20Z","https://github.com/nuxt-modules/i18n/issues/3833",0.7150372,{"description":3243,"labels":3244,"number":3246,"owner":3176,"repository":3177,"state":3178,"title":3247,"updated_at":3248,"url":3249,"score":3250},"### Environment\n\n- Node Version: v23.11.0\n- Nuxt Version: 3.17.5\n- Nitro Version: 2.11.12\n- @nuxtjs/i18n: 9.5.5\n- Package Manager: pnpm@9.5.0\n\n### Reproduction\n\nhttps://stackblitz.com/edit/bobbiegoede-nuxt-i18n-starter-5cgp8cfo?file=package.json,components%2FLangSwitcher.vue,pages%2Findex.vue,pages%2Fnews%2Findex.vue,pages%2Fnews%2F[slug]%2Findex.vue,nuxt.config.ts\n\n### Describe the bug\n\nWhen using a simple language switcher like this:\n\n```vue\n\u003Ctemplate>\n \u003Cdiv class=\"lang-switch\">\n \u003CNuxtLink\n v-for=\"availableLocale in availableLocales\"\n :key=\"availableLocale.code\"\n :to=\"switchLocalePath(availableLocale.code)\"\n >\n {{ availableLocale.name }}\n \u003C/NuxtLink>\n \u003C/div>\n\u003C/template>\n\n\u003Cscript setup>\nconst { locale, locales } = useI18n();\nconst switchLocalePath = useSwitchLocalePath();\nconst availableLocales = computed(() => {\n return locales.value.filter((i) => i.code !== locale.value);\n});\n\u003C/script>\n```\n\nIf you are on a dynamic route (e.g. `/news/[slug]`), navigating to another page causes Vue Router to warn:\n\n```\n[Vue Router warn]: Discarded invalid param(s) \"slug\" when navigating. See https://github.com/vuejs/router/blob/main/packages/router/CHANGELOG.md#414-2022-08-22 for more details.\n```\n\n## Expected behavior\nNo warning should be emitted when navigating, even from dynamic routes.\n\n## Actual behavior\nA warning is emitted every time the user navigates from a dynamic route to another page.\n\n### Additional context\n\n_No response_\n\n### Logs\n\n```shell\n[Vue Router warn]: Discarded invalid param(s) \"slug\" when navigating. \nSee https://github.com/vuejs/router/blob/main/packages/router/CHANGELOG.md#414-2022-08-22 for more details.\nlocalePathFor\t@\tindex.vue?t=1750772396716:31\n(anonymous)\t@\tindex.vue?t=1750772396716:51\n_sfc_render\t@\tindex.vue?t=1750772396716:48\n```",[3245],{"name":3187,"color":3188},3702,"Language switcher with switchLocalePath causes [Vue Router warn]: Discarded invalid param(s) \"slug\" on dynamic routes","2025-06-24T14:14:55Z","https://github.com/nuxt-modules/i18n/issues/3702",0.71797174,{"description":3252,"labels":3253,"number":3259,"owner":3176,"repository":3177,"state":3260,"title":3261,"updated_at":3262,"url":3263,"score":3264},"### Environment\n\n*\n\n### Reproduction\n\n*\n\n### Describe the bug\n\nIn v9, SSG builds would have the i18n messages inlined in traditional Nuxt js files with random names, so upon new deployments, it is safe for CDNs and caching proxies out-of-the-box without any special configs nor invalidations needed.\n\nIn v10, SSG builds is generated at a static path: `_i18n/en/messages.json`, causing unexpected missing/outdated i18n translations, and is somewhat hard-to-debug for average dev which are not familiar with devops/infras stuff.\n\n### Additional context\n\nIs there a setting to disable the new static path pattern?, And if we continues with this pattern, it should be noted on the documents page, telling the user to invalidate or add caching exclude rule for the i18n files.\n\n### Logs\n\n```shell\n\n```",[3254,3257,3258],{"name":3255,"color":3256},"need more info","e295d6",{"name":3187,"color":3188},{"name":3190,"color":3191},3778,"closed","[v10] CDN caching issue for SSG OOTB","2025-09-04T10:49:16Z","https://github.com/nuxt-modules/i18n/issues/3778",0.6898191,{"description":3266,"labels":3267,"number":3269,"owner":3176,"repository":3177,"state":3260,"title":3270,"updated_at":3271,"url":3272,"score":3273},"### Environment\n\n------------------------------\r\n- Operating System: Linux\r\n- Node Version: v20.14.0\r\n- Nuxt Version: 3.12.4\r\n- CLI Version: 3.12.0\r\n- Nitro Version: 2.9.7\r\n- Package Manager: yarn@1.22.22\r\n- Builder: -\r\n- User Config: ssr, compatibilityDate, devtools, modules, components, runtimeConfig, site, ogImage, i18n, tailwindcss, sitemap, content, gtag, cookieControl\r\n- Runtime Modules: @nuxtjs/i18n@8.3.3, @nuxtjs/tailwindcss@6.12.1, @nuxtjs/seo@2.0.0-rc.16, @nuxt/content@2.13.2, @nuxthq/studio@2.0.3, nuxt-gtag@2.1.0, @dargmuesli/nuxt-cookie-control@8.4.7\r\n- Build Modules: -\r\n------------------------------\n\n### Reproduction\n\nwww.vinoteqa.com/blog\n\n### Describe the bug\n\nWhen I try to visit a page, other than the root, I get redirected to the localized url but still get a error. As soon as I reload the page, it is displayed correctly. \r\n\r\nTry it at: www.vinoteqa.com/blog\r\n\r\nAm I missing some configuration?\n\n### Additional context\n\n```ts\r\n i18n: {\r\n defaultLocale: 'en',\r\n locales: [{\r\n code: 'en',\r\n iso: 'en',\r\n name: 'English',\r\n file: 'en.json',\r\n },\r\n {\r\n code: 'de',\r\n iso: 'de',\r\n name: 'Deutsch',\r\n file: 'de.json',\r\n },\r\n {\r\n code: 'it', \r\n iso: 'it',\r\n name: 'Italiano',\r\n file: 'it.json',\r\n }],\r\n strategy: 'prefix',\r\n lazy: false,\r\n langDir: 'locales/',\r\n },\r\n ```\r\n \r\n \n\n### Logs\n\n_No response_",[3268],{"name":3187,"color":3188},3062,"404 on all pages other than root with `prefix` strategy","2025-05-21T19:36:56Z","https://github.com/nuxt-modules/i18n/issues/3062",0.6917983,["Reactive",3275],{},["Set"],["ShallowReactive",3278],{"$fTRc1wZytZ_XrK4EfJfei_Sz-An4H4Yy6syhVxH_PVJc":-1,"$fYUCKeU9d_mpXrc1yCMutypvZXh2Fngf5q3bYUbEFeBI":-1},"/nuxt-modules/i18n/3816"]