8 / 8 / 2
Регистрация: 31.01.2014
Сообщений: 464
1

i18next способы смены языка

06.12.2019, 14:43. Показов 4927. Ответов 2
Метки нет (Все метки)

Я сделал два хелпера для создания компонента с переводом слова, всё работает.

Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
import moment from "moment";
import i18next from 'i18next';
import {Translation} from 'react-i18next';
import '../translate/i18n';
import React from 'react';
 
export const i18nextObject = i18next;
 
function registerHandlerT(props, t) {
    let text = t(props.text, props.obj);
    if (props.uppCase) text = text.toUpperCase();
    if (props.lowCase) text = text.toLowerCase();
    return text;
}
export default function T(props) {
    return (
        <Translation>
            {
                t => <>{registerHandlerT(props, t)}</>
            }
        </Translation>
    )
 
///смена языка в редаксе
 case SELECT_LANGUAGE: {
            moment.locale(action.language);
            i18nextObject.changeLanguage(action.language);
            return {
                ...state,
                language: action.language
            };
        }
}
Но мне интересно как можно ещё реализовать смену языка? Через хуки, withTranslation неудобно, ведь придётся к каждому компоненту это прописывать, а компонет Trans и I18nextProvider я не понимаю как использовать - первый не понимаю как юзать если в переводе только ключ и строка(а не так, что в строке ещё слова), а второй не понимаю как юзать.
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.12.2019, 14:43
Ответы с готовыми решениями:

Способы смены формата ячейки
Доброе время суток! Ситуация такая: копирую десятизначное число (номер телефона) из одной ячейки в...

Кто знает способы смены региона у сайта?
Здравствуйте. Есть сайт, который требуется продвигать по определенному региону. Но уже около 3-х...

Клавиши смены языка...
Добрый вечер, форумчане...:friends: Не работают клавиши смены языка (ctrl+alt)... Как и слева, так...

Кнопка смены языка
Здравствуйте! Написал небольшую программу, и решил сделать для неё английскую локализацию....

2
8 / 8 / 2
Регистрация: 31.01.2014
Сообщений: 464
06.12.2019, 21:50  [ТС] 2
Задача встала остро, т.к в placeholder инпута мне мой компонент с переводом не передать.
0
8 / 8 / 2
Регистрация: 31.01.2014
Сообщений: 464
11.12.2019, 15:07  [ТС] 3
Решение - превращать компонент в строку и хранить язык в редаксе, что бы каждый раз вызывать рендер компонентов.

Javascript
1
ReactDOMServer.renderToString(<T text='maxWidthImage' obj={{width: sizeParams.widthMax}}/>)
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.12.2019, 15:07
Помогаю со студенческими работами здесь

Задача смены языка на странице
Всем доброго времени суток. Помогите решить задачу пожалуйста. Есть страница на которой...

Не работает выпадающее меню смены языка
Вопрос в том, что по такому-же принципу главное меню сайта работает как надо,а вот с языком, чтото...

Отловить нажатие клавиш смены языка
Вот на подобии этого, только вот не сильно понимаю как сделать, исправьте (Тоесть хочу, чтобы при...

Шаблоны проектирования для смены языка программы.
Требуется создать библиотеку для смены языка пользовательского интерфейса программ. В принципе,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru