реагировать на родные ручные переводы и языки - PullRequest
0 голосов
/ 03 мая 2018

Как вы справляетесь с переводом на реагировать на родной? Вот как я это сделал. Это плохой стиль кодирования или плохая производительность?

Language.js

export default {
    appName: "TestApp",
    welcome: {
        header: {
            title: (l) => {
                switch (l) {
                    case "de": return `germanTitle`
                    case "en": return `englishTitle`
                }
            },
            subtitle: (l) => {
                switch (l) {
                    case "de": return `germanSubtitle`
                    case "en": return `englishSubtitle`
                }
            }
        }
    }
}

тогда в моем приложении

import language from "./language.js"
let lang = "de"
...

render(){
    return (
        <View>
            <Text>{language.welcome.title(lang)}</Text>
        </View>
    )
}

Ответы [ 2 ]

0 голосов
/ 03 мая 2018

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

0 голосов
/ 03 мая 2018

В настоящее время в наших проектах мы используем это репо :) Помните, что вам нужно извлечь, если вы используете Expo

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...