Как изменить язык, используя родную локализацию?

Я следую этот документ для реализации метода языкового перевода в моем приложении. Существует раскрывающийся список для выбора языка, и я попытался утешить значение получение из выпадающего списка, а затем передача его в функцию onChangeText. я используя два набора языков, таких как английский и арабский, но при переключении язык с английского на арабский язык не меняется на арабский. Ниже приведен часть кода для локализации.Пожалуйста, помогите мне разобраться в ошибке.Спасибо!

stringsoflanguages.js

const strings = new LocalizedStrings({
    "English": {
        phone_number: "Phone Number",
        register: "REGISTER/LOGIN",
        plumber: "Plumber",


    },
    "Arabic": {
        phone_number: "رقم الهاتف",
        register: "التسجيل/الدخول",
        plumber: "سباك",
    }
export default strings;

регистрация.js

import stringsoflanguages from './stringsoflanguages';
  const lang = [

            { value: 'English' },
            { value: 'Arabic' },

        ];
        language = lang;

 onChangeText(text) {

        console.info(text);

        stringsoflanguages.setLanguage(text);
    }
 ....
   .....

              <Dropdown
               label = "Choose Language"
               data = {language}
               textColor = "#fff"
               selectedItemColor = "#000"
              onChangeText = {this.onChangeText}
                    />

                <Input
                 label = "Phone Number"
                placeholder = {stringsoflanguages.phone_number} />

                <Button onPress = {() => this.onPressRegister()}>
                <Text>{stringsoflanguages.register</Text>
                </Button>

документы говорит, что вам нужно вызвать this.setState({}); после установки языка, скорее всего, для принудительного повторного рендеринга.

Chris G 27.03.2019 06:53

Я пробовал это, но получаю ошибку this.setState undefined

Linu Sherin 27.03.2019 06:56

Ну, вы должны правильно связать функцию. Самый простой способ — заменить onChangeText(text) { на onChangeText = (text) => {, если ваша среда поддерживает это. (Однако это общеизвестное знание React и не имеет ничего общего с вопросом.)

Chris G 27.03.2019 07:00

Да, работает! Большое спасибо за помощь :)

Linu Sherin 27.03.2019 07:03

Также я сомневаюсь, как передать это значение на следующие страницы. Мне нужно передать this.state.text или просто text?

Linu Sherin 27.03.2019 07:04

Если у вас есть компонент-контейнер для ваших страниц, то выбранный язык должен находиться в состоянии этого контейнера, чтобы вы могли передавать его на все страницы. Это означает, что выбор должен отправить его вверх, а ваш контейнер должен передать его вниз. Как это сделать, объясняется во всей документации по реакции, переполнению стека и в Интернете в целом.

Chris G 27.03.2019 07:07

Да, я проверю. Спасибо.

Linu Sherin 27.03.2019 07:10
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
1
7
1 954
0

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