tencent cloud

文档反馈

最后更新时间:2024-11-22 11:55:28

    功能描述

    React UIKit 默认自带 英语、日语、韩语、中文简体/ 中文繁体 语言包,作为界面展示语言。
    根据此文档指引,您可以使用默认语言包,也可使用自定义的高级国际化能力,包括新增语言、新增词条或修改现有词条翻译。
    
    
    

    使用自带语言及词条库

    如果您的 App,需要的语言仅包括英语 / 日语 / 韩语 / 中文简体/ 中文繁体 ,且不需要新增词条或修改现有词条翻译,请参考本部分。

    指定语言

    如果您需要指定界面的语言,需要在引入 UIKitProvider 时设置 language
    // language support en-US / zh-CN / ja-JP / ko-KR / zh-TW
    <UIKitProvider language={'en-US'}>...</UIKitProvider>

    动态切换语言

    UIKitProvider 之外,动态切换 React UIKit 语言:
    import React, { useState } from 'react';
    import { UIKitProvider } from '@tencentcloud/uikit-base-component-react';
    
    // language support en-US / zh-CN / ja-JP / ko-KR / zh-TW
    const languageList = ['en-US','zh-CN','ja-JP','ko-KR', 'zh-TW'];
    
    export default function App() {
    // language setting
    const [currentLanguage, setCurrentLanguage] = useState('en-US');
    const changeLanguage = (language) => {
    setCurrentLanguage(language);
    };
    return (
    // select language
    // <div @click="changeLanguage('en-US')">English</div>
    <UIKitProvider language={currentLanguage}>
    ...
    </UIKitProvider>
    );
    }
    UIKitProvider 之内,动态切换 React UIKit 语言:
    import React from 'react';
    import { UIKitProvider, useUIKit } from '@tencentcloud/uikit-base-component-react';
    
    // language support en-US / zh-CN / ja-JP / ko-KR / zh-TW
    const languageList = ['en-US','zh-CN','ja-JP','ko-KR', 'zh-TW'];
    
    export default function App() {
    return (
    // init language
    <UIKitProvider language='en-US'>
    <Child />
    </UIKitProvider>
    );
    }
    
    function Child() {
    const { language, setLanguage } = useUIKit();
    setLanguage('zh-CN');
    return <div>current language is {language}</div>
    }

    使用语言词条

    使用 hook useUIKit 导出翻译函数 tuseUIKit 作为 Hook 只能在 UIKitProvider 的子组件中使用。
    import React from 'react';
    import { UIKitProvider, useUIKit } from '@tencentcloud/uikit-base-component-react';
    
    export default function SampleChat() {
    return (
    // init language
    <UIKitProvider language='en-US'>
    <Child />
    </UIKitProvider>
    );
    }
    
    function Child() {
    const { t } = useUIKit();
    return <div>{t('TUIChat.No More')}</div>
    }

    自定义语言词条

    新增或修改语言词条

    如果您需要对现有的 英语 / 日语 / 韩语 / 中文简体/ 中文繁体 语言包词条进行扩充或修改,参考下面的示例代码。具体词条详情请参考 Github - @tencentcloud/chat-uikit-react/locales
    import { UIKitProvider } from '@tencentcloud/uikit-base-component-react';
    
    const additionalLanguageResource = [
    {
    lng: 'de',
    translation: {
    'TUIChat': {
    'No More': 'Nicht mehr',
    },
    },
    },
    ];
    
    export default function App() {
    return (
    <UIKitProvider language="de" additionalLanguageResources={additionalLanguageResource}>
    <Child />
    </UIKitProvider>
    );
    }
    
    function Child() {
    const { t, language, setLanguage } = useUIKit();
    return <div>current language is {language}. {t('TUIChat.No More')}</div>
    }

    交流与反馈

    加入Telegram 技术交流群组WhatsApp 交流群,享有专业工程师的支持,解决您的难题。
    
    联系我们

    联系我们,为您的业务提供专属服务。

    技术支持

    如果你想寻求进一步的帮助,通过工单与我们进行联络。我们提供7x24的工单服务。

    7x24 电话支持