Добавить перевод на стороне сервера только с помощью next-i18next

Сценарий:

  • У нас есть сервер, который отвечает на несколько доменов (70+)
  • У каждого домена свой язык (уже в отдельном файле JSON)
  • У меня есть карта "domain":"translation.json"
  • У каждого клиента один язык: пользователь, посетивший example.com, увидит сайт только на английском языке. Посетитель "example.es" увидит его на испанском языке. Нет возможности изменить язык текущего сайта, просто укажите ссылку на другой домен.

Проблема

Я не хочу загружать 70+ переводов на стороне клиента, потому что клиент никогда не сможет это изменить.

Как я могу применить эту карту в моем приложении NextJS, но не передавать клиенту другие ресурсы?

PS: на SO нет тега для "next-i18next" (а для nextjs их 2).

1 ответ

Next-i18next имеет 2 режима,

  1. На стороне сервера он загружает соответствующий файл перевода, используя i18next-node-fs-backend
  2. На стороне клиента он загружает соответствующий файл перевода, используя i18next-xhr-backend.

Это означает, что по умолчанию эта библиотека загружает только соответствующий язык.

Другие вопросы по тегам