Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / HTML, JavaScript, VBScript, CSS Новый топик    Ответить
 Thymeleaf javascript localized messages in array  [new]
Imperous
Member

Откуда: Оттуда )
Сообщений: 1118
Всем привет!

Прошу подсказки в решении вопроса.

1. Есть бандл с двумя языками (40 фраз), например:
автор
say.hello=hello
say.welcome=welcome
say.bye=bye
...

2. Есть фрагмент, i18n.html:
<script>
  var i18n = [];
</script>


Нужно в массив i18n запихнуть эти самые ключ-значение. Значение естественно на текущей локали приложения. На самом деле не все, я только небольшая часть, пусть 10.

Передавать ресурс/массив параметром во view не особо хочется. Хочу найти оптимальное и простое решение.
22 янв 19, 00:53    [21790698]     Ответить | Цитировать Сообщить модератору
 Re: Thymeleaf javascript localized messages in array  [new]
Imperous
Member

Откуда: Оттуда )
Сообщений: 1118
После долгих игр, было решено таки делать через HandlerInterceptorAdapter, в нем формировать красивую строку и передавать ее во вью.
22 янв 19, 13:58    [21791102]     Ответить | Цитировать Сообщить модератору
 Re: Thymeleaf javascript localized messages in array  [new]
Герой дня
Member

Откуда: obmanula.ru
Сообщений: 30503
Imperous,

на Хабре есть серия статей по Thymeleaf
22 янв 19, 17:00    [21791373]     Ответить | Цитировать Сообщить модератору
 Re: Thymeleaf javascript localized messages in array  [new]
Imperous
Member

Откуда: Оттуда )
Сообщений: 1118
Герой дня
Imperous,

на Хабре есть серия статей по Thymeleaf

да, видел их, кто-то молодец перевел туториал
23 янв 19, 00:08    [21791672]     Ответить | Цитировать Сообщить модератору
 Re: Thymeleaf javascript localized messages in array  [new]
Imperous
Member

Откуда: Оттуда )
Сообщений: 1118
Не понравился мне HandlerInterceptorAdapter тем что в браузере в адресной строке это все.
Открыл для себя @ModelAttribute - шикардос.
23 янв 19, 12:33    [21791976]     Ответить | Цитировать Сообщить модератору
 Re: Thymeleaf javascript localized messages in array  [new]
springy
Member

Откуда:
Сообщений: 292
наверное, простой вариант был бы что-то вроде:

<script>
var i18n = [[#{text1}]];
</script>

но сам не пробовал. Ключевой момент двойные [[]]
28 янв 19, 16:32    [21796026]     Ответить | Цитировать Сообщить модератору
 Re: Thymeleaf javascript localized messages in array  [new]
Imperous
Member

Откуда: Оттуда )
Сообщений: 1118
springy
наверное, простой вариант был бы что-то вроде:

<script>
var i18n = [[#{text1}]];
</script>

но сам не пробовал. Ключевой момент двойные [[]]


Да, спасибо, отличный вариант. Решетка чтоб использовать локализацию из бандла, а $, в случае если используем переменную. Не дочитал я до этого в статьях хабра :)
И разные скобки позволяют выводить экранированный и неэкранированный текст
Экранировано
<script>
  var i18n = [[${text1}]];
</script>
НеЭкранировано
<script>
  var i18n = [(${text1})];
</script>
30 янв 19, 10:49    [21797533]     Ответить | Цитировать Сообщить модератору
 Re: Thymeleaf javascript localized messages in array  [new]
Герой дня
Member

Откуда: obmanula.ru
Сообщений: 30503
Imperous
Герой дня
Imperous,

на Хабре есть серия статей по Thymeleaf

да, видел их, кто-то молодец перевел туториал


я перевел )

Модератор: Тема перенесена из форума "Java".
30 янв 19, 12:52    [21797696]     Ответить | Цитировать Сообщить модератору
Все форумы / HTML, JavaScript, VBScript, CSS Ответить