Size: a a a

2021 February 16

N

Namaste in BeerJS Moscow
Ну и хранение в памяти по сути кэш, поскольку данные не присутствуют в каждом запросе на бэкенд
источник
2021 February 17

ВВ

Владимир Высокий... in BeerJS Moscow
Namaste
Коллеги, вопрос по кэшу локалей, интересно ваше мнение.
К примеру, есть статусы задач, хранятся в виде key:value, объекты вида in_progress:выполняется. Статус это только пример, фактически, наборов таких key:value будет больше 100 разных вариаций.
В первом варианте, при загрузке фронт-приложения получаем все статусы (в запросе указываем локаль) и кэшируем на фронте в виде key:value. Далее, в любом кейсе получения текстового статуса для интерфейса (список задач, отображение задачи и пр) получаем от бэка только key статуса, а value мапим из кэша.
Во втором варианте мы не получаем сразу текстовые значения статусов и не кэшируем их. Вместо этого бэк при каждом запросе рядом со статусом кладет текстовое значение статуса, как { key: in_progress, value: выполняется }.  Так бэк делает для всех объектов, у которых есть идентификатор и значение, значение подкладывается в соответствии с выбранной локалью.
Какой вариант вам нравится больше?)
второй вариант. В первом при усложнении логики наплодятся костыли. Ко второму лучше добавить еще ручки получения отдельно текущего статуса по задачи (чтобы получить только объект) и списка всех возможных статусов для задачи (если у разных задач разные виды статусов бывают)
источник

IV

Ivan Volkov in BeerJS Moscow
Namaste
Коллеги, вопрос по кэшу локалей, интересно ваше мнение.
К примеру, есть статусы задач, хранятся в виде key:value, объекты вида in_progress:выполняется. Статус это только пример, фактически, наборов таких key:value будет больше 100 разных вариаций.
В первом варианте, при загрузке фронт-приложения получаем все статусы (в запросе указываем локаль) и кэшируем на фронте в виде key:value. Далее, в любом кейсе получения текстового статуса для интерфейса (список задач, отображение задачи и пр) получаем от бэка только key статуса, а value мапим из кэша.
Во втором варианте мы не получаем сразу текстовые значения статусов и не кэшируем их. Вместо этого бэк при каждом запросе рядом со статусом кладет текстовое значение статуса, как { key: in_progress, value: выполняется }.  Так бэк делает для всех объектов, у которых есть идентификатор и значение, значение подкладывается в соответствии с выбранной локалью.
Какой вариант вам нравится больше?)
второй вариант, но справочник переводов отдельным обьектом в том же ответе, что бы не дублироовать в основном объекте
источник