SSR (v9)
Using next.js?
You should have a look at next-i18next which extends react-i18next to bring it to next.js the easiest way.
Samples
To learn more you should have a look at our samples:
For further information see this issue.
Pass language and translations down to client
Both the i18nextProvider and translate hoc allow to pass in initialI18nStore
and initialLanguage
. By doing so the translations won't be loaded and initial clientside render will avoid any flickering or rerender by checksum mismatch.
For details check the docs of those components or have a look at the examples above.
loadNamespaces helper
loadNamespaces: Function that will pre-load all namespaces used by your components. Works well with react-router
match
function
props:
components: Components that need to have namespaces loaded.
i18n: the i18n instance to load translations into
use the i18next-express-middleware
When using i18next-express-middleware, you can use req.i18n
as the i18next
instance for I18nextProvider
it will assert no request conflicts happen (each request gets it's cloned instance of i18next):
Last updated