feat(next-international): add defaultLocale
config option to createI18nServer
#365
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Hi, thank you for the wonderful package.
We have started using it in our project and encountered a small edge case. Instead of placing the entire app into an
app/[locale]
folder, we determine the locale by fetching the user in the middleware, checking the preferred language, and then using a modified version of your middleware to set the cookie and header values. While I believe this scenario is common, for now, we are using it incorrectly 😅This situation has led to an interesting edge case. Our app has almost no static routes because we rely on
headers
extensively for fetching. Consequently, we do not invokesetStaticParamsLocale
at the top of our pages. However, during app building, Next.js assumes that all routes without parameters are static, attempts to prerender them, and only treats the route as dynamic upon encountering aheaders
orcookies
call. Unfortunately, in practice, it does not reach this stage as we encounter an error before that point:To address this, I propose introducing a
defaultLocale
on the server for prerendering ifsetStaticParamsLocale
was not called. Alternatively,defaultStaticLocale
may be a more suitable option.