Исходя из вашего комментария выше - вам нужен механизм локализации JavaScript.Есть несколько опций, которые зависят от того, как вы собираете и упаковываете свое приложение.
Вот некоторые механизмы:
1) Создайте отдельный файл JS для каждого языка и загрузитеправильный в зависимости от клиента (путем получения его информации из запроса).
Довольно плохо - много дублирования и накладных расходов.
2) Немного улучшенометод состоит в том, чтобы представить каждую строку объектом:
var localeStrings =
{
'some message':
{
'en/US':'Some text',
'ru/RU':'Какой-то текст'
}
}
, чем в вашем коде вы получаете реальное сообщение, снова вызывая localeStrings['some message']['en/US']
, извлекая язык из заголовка запроса и используя так же, как яused 'en/US'
.
Также плохо - так как, опять же, много ненужных данных загружается клиенту.
3) Некоторая форма динамической замены по запросу.
Вообще говоря, идея заключается в том, что у вас есть некоторые для серверного компонента (скажем, сервлета), который заменяет токены (скажем, `## {some token}) данными из файла на стороне сервера(ы), которые содержатs переводы.
Это может привести к тому, что пользовательские ответы будут немного задержаны, но это только предположение и может быть незначительным.
Выберите свой яд.
IЯ уверен, что есть еще, и я хотел бы видеть их в ответах.Я не смог найти что-то, что мог бы использовать "из коробки".
РЕДАКТИРОВАТЬ : забыл указать вам на связанный разговор .