最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

在?React?中使用?i18next的示例

 更新時間:2023年01月06日 15:08:25   作者:啵啵怪_  
這篇文章主要介紹了在?React?中使用?i18next,本文結合實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

1. 安裝依賴

npm i i18next react-i18next i18next-browser-languagedetector
  • i18next 提供了翻譯的基本能力。
  • react-i18next 是 i18next 的一個插件,用來降低 react 的使用成本。
  • i18next-browser-languagedetector 是用來檢測瀏覽器語言的插件。

2. 在src下創(chuàng)建i18n文件夾

!

2.1 common下的zh-CN.js

{
  "common": {
    "personSetting": "個人設置",
    "modifyPassword": "修改密碼",
    "currentTime": '當前時間是 {{time}}',
  }
}

2.2 common下的en-US.js

{
  "common": {
    "personSetting": "Personal settings",
    "modifyPassword": "change Password",
    "currentTime": 'Current time is {{time}}',
  }
}

2.3 在common的index.js文件中引入

import en_common from './en-US/translation.json'
import zh_common from './zh-CN/translation.json'

export const langCommon = { en_common, zh_common }

2.4 在resources.js中引入common模塊的翻譯

import { langCommon } from './locales/common' //公共需要翻譯的內容
// 把所有的翻譯資源集合
const resources = {
  en: {
    translation: {
      ...langCommon.en_common
    },
  },
  zh: {
    translation: {
      ...langCommon.zh_common
    },
  }
}
export { resources }

2.5 utils下初始化語言的方法

export function initLangage() {
  let lang = localStorage.getItem('language') || navigator.language // 獲取瀏覽器的語言環(huán)境,兼容IE的寫法
  if (lang) {
    lang = lang.substr(0, 2).toLowerCase() // 截取前兩位字符,并轉化為小寫
    return lang
  } else {
    return 'en'
  }
}

2.6 i18n.js代碼如下

import i18n from 'i18next'
import { initReactI18next } from 'react-i18next'
import LanguageDetector from 'i18next-browser-languagedetector';
import { resources } from '@/i18n/resources'
import { initLangage } from '@/utils'

i18n
  // 檢測用戶當前使用的語言
  // 文檔: https://github.com/i18next/i18next-browser-languageDetector
  .use(LanguageDetector)
  // 注入 react-i18next 實例
  .use(initReactI18next)
  // 初始化 i18next
  // 配置參數(shù)的文檔: https://www.i18next.com/overview/configuration-options
  .init({
    resources, //資源初始化
    lng: initLangage(),
    interpolation: {
      escapeValue: false, // react already safes from xss
    },
    react: {
      useSuspense: false, // this will do the magic
    },
    debug: false,
  })
export default i18n

3. 在app.tsx中引入

import './i18n/i18n'

4. 頁面中使用

import { useTranslation } from 'react-i18next';

const SafetyManage: React.FC = (): React.ReactElement => {
  const { t } = useTranslation();
  return (
    <div >
      <Button
         type="primary"
       >
         {t('common.personnalSetting')}
       </Button>,
       <Button
       >
         {t('common.modifyPassword')}
       </Button>,
       <p>
		  {t('common.currentTime', { time: dayjs().format('MM/DD/YYYY') })}
		</p>
    </div>
  );
}

export default App;

useTranslation 返回的對象包含一個 t 方法,這個方法可以翻譯文本。
i18next 提供了插值的用法: 在 t 函數(shù)中傳遞第二個參數(shù),它是一個對象。

在這里插入圖片描述

在這里插入圖片描述

參考文章:https://www.zadmei.com/qdizjsjz.html

到此這篇關于在 React 中使用 i18next的文章就介紹到這了,更多相關React 使用 i18next內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • React+Router多級導航切換路由方式

    React+Router多級導航切換路由方式

    這篇文章主要介紹了React+Router多級導航切換路由方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • react中使用usestate踩坑及解決

    react中使用usestate踩坑及解決

    這篇文章主要介紹了react中使用usestate踩坑及解決,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • 在React中正確處理異步操作的方法

    在React中正確處理異步操作的方法

    本文全面介紹了在React中處理異步操作的方法、最佳實踐及常見坑點,涵蓋數(shù)據(jù)獲取、延時任務、用戶交互、動畫和效果等典型場景,并提供了如useEffect、AbortController、ReactQuery等具體實現(xiàn)示例,感興趣的朋友一起看看吧
    2025-03-03
  • React Hook useState useEffect componentDidMount componentDidUpdate componentWillUnmount問題

    React Hook useState useEffect componentD

    這篇文章主要介紹了React Hook useState useEffect componentDidMount componentDidUpdate componentWillUnmount問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • React+hook實現(xiàn)聯(lián)動模糊搜索

    React+hook實現(xiàn)聯(lián)動模糊搜索

    這篇文章主要為大家詳細介紹了如何利用React+hook+antd實現(xiàn)聯(lián)動模糊搜索功能,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學習一下
    2024-02-02
  • 基于React-Dropzone開發(fā)上傳組件功能(實例演示)

    基于React-Dropzone開發(fā)上傳組件功能(實例演示)

    這篇文章主要介紹了基于React-Dropzone開發(fā)上傳組件,主要講述的是在React-Flask框架上開發(fā)上傳組件的技巧,需要的朋友可以參考下
    2021-08-08
  • React中key屬性的警告及解決方案

    React中key屬性的警告及解決方案

    在使用 React 進行開發(fā)時,key 屬性是一個至關重要的概念,尤其在渲染列表時,開發(fā)者在使用 key 屬性時,常常會遇到各種警告信息,本文將詳細解析這些警告的原因,提供有效的解決方案,并總結最佳實踐,需要的朋友可以參考下
    2024-12-12
  • react+react-beautiful-dnd實現(xiàn)代辦事項思路詳解

    react+react-beautiful-dnd實現(xiàn)代辦事項思路詳解

    這篇文章主要介紹了react+react-beautiful-dnd實現(xiàn)代辦事項,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-06-06
  • React useMemo與useCallabck有什么區(qū)別

    React useMemo與useCallabck有什么區(qū)別

    useCallback和useMemo是一樣的東西,只是入?yún)⒂兴煌瑄seCallback緩存的是回調函數(shù),如果依賴項沒有更新,就會使用緩存的回調函數(shù);useMemo緩存的是回調函數(shù)的return,如果依賴項沒有更新,就會使用緩存的return
    2022-12-12
  • React中事件的類型定義方式

    React中事件的類型定義方式

    這篇文章主要介紹了React中事件的類型定義方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-12-12

最新評論

土默特右旗| 壤塘县| 合肥市| 江永县| 尼勒克县| 徐州市| 湖口县| 出国| 远安县| 临漳县| 万源市| 麻江县| 华安县| 和硕县| 囊谦县| 克拉玛依市| 台中市| 延边| 甘泉县| 安远县| 新郑市| 宿迁市| 乐清市| 隆回县| 黄山市| 邢台市| 惠东县| 合阳县| 东兴市| 清原| 桂东县| 太原市| 修文县| 保定市| 沁水县| 辽源市| 金沙县| 祁门县| 郸城县| 西充县| 朝阳县|