nuxt-modules / i18n

I18n module for Nuxt
https://i18n.nuxtjs.org
MIT License
1.66k stars 467 forks source link

Extending local pages doesn't work #2804

Closed Xenossolitarius closed 4 months ago

Xenossolitarius commented 4 months ago

Environment

No need

Reproduction

No need

Describe the bug

When extending local pages, actually cloning them eg. original/ -> clone/original the params pages don't get their i18n versions.

I don't think the reproduction is needed. I saw the code for reading local pages and it seems they are deduped by the file path.

Managed to workaround by duplicating pages after i18n module and injecting the needed path.

Additional context

No response

Logs

No response

github-actions[bot] commented 4 months ago

Would you be able to provide a reproduction? 🙏

More info ### Why do I need to provide a reproduction? Reproductions make it possible for us to triage and fix issues quickly with a relatively small team. It helps us discover the source of the problem, and also can reveal assumptions you or we might be making. ### What will happen? If you've provided a reproduction, we'll remove the label and try to reproduce the issue. If we can, we'll mark it as a bug and prioritise it based on its severity and how many people we think it might affect. If `needs reproduction` labeled issues don't receive any substantial activity (e.g., new comments featuring a reproduction link), we'll close them. That's not because we don't care! At any point, feel free to comment with a reproduction and we'll reopen it. ### How can I create a reproduction? We have a couple of templates for starting with a minimal reproduction: 👉 [Reproduction starter (v8 and higher)](https://stackblitz.com/fork/github/BobbieGoede/nuxt-i18n-starter/tree/v8) 👉 [Reproduction starter (edge)](https://stackblitz.com/fork/github/BobbieGoede/nuxt-i18n-starter/tree/edge) A public GitHub repository is also perfect. 👌 Please ensure that the reproduction is as **minimal** as possible. See more details [in our guide](https://nuxt.com/docs/community/reporting-bugs/#create-a-minimal-reproduction). You might also find these other articles interesting and/or helpful: - [The Importance of Reproductions](https://antfu.me/posts/why-reproductions-are-required) - [How to Generate a Minimal, Complete, and Verifiable Example](https://stackoverflow.com/help/mcve)
Xenossolitarius commented 4 months ago

@BobbieGoede Terribly sorry for raising this issue. There is a catch when filtering the routes that you don't want to clone. Sometimes the name of route in extendPage hook is undefined. So that small 1 liner was causing all the hassle, i'm leaving it here for everybody else to see because it is kinda an undocumented behavior.. Oh well closing issue.

Xenossolitarius commented 4 months ago

Only thing to mention is that experimental feature 'typedPages' is generating wrong types now overriding the correct types with the clone pages names. Oh well it's an experimental feature and it's not hard to infer it back to a correct type