最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

antd項(xiàng)目中國(guó)際化改造

2023-08-12 17:05 作者:小老虎Tigger  | 我要投稿

項(xiàng)目中的國(guó)際化采用了react-intl-universal來實(shí)現(xiàn),如何使用可參考官網(wǎng),目前的做法是在原有intl.get基礎(chǔ)上包裝了一層,在項(xiàng)目中調(diào)用包裝后的函數(shù),然后通過腳本遍歷所有項(xiàng)目文件,找到包裝后的函數(shù),再根據(jù)函數(shù)中的參數(shù)導(dǎo)出一份excel,配合一些翻譯工具,自動(dòng)進(jìn)行翻譯。

但是這樣做有一些問題,首先就是寫法比較繁瑣,每次都要寫intl.get(key, default, value),其次就是通用的一些詞匯沒有辦法快速?gòu)?fù)用,因?yàn)閘ocal data都是根據(jù)腳本生成的,在使用intl時(shí)不知道有哪些公共的詞匯能夠復(fù)用,導(dǎo)致像新增、刪除這些通用的詞匯在項(xiàng)目中的各個(gè)地方都有定義,還有就是目前的腳本是通過遍歷整個(gè)項(xiàng)目文件來實(shí)現(xiàn),略微有些繁瑣,生成文件較慢。

我們期待的是可以像使用一個(gè)js對(duì)象那樣去進(jìn)行國(guó)際化,類似于這樣。

我們希望做到書寫簡(jiǎn)單,并且國(guó)際化配置文件可以自動(dòng)生成,統(tǒng)一管理。

那么如何修改呢?

我們其實(shí)可以這樣做,首先在項(xiàng)目中創(chuàng)建一個(gè)i18n的文件夾,來放置我們每個(gè)頁面的國(guó)際化文件。目錄結(jié)構(gòu)類似于這樣。

module中的文件內(nèi)容非常簡(jiǎn)單。

common.ts

我們要做的就是根據(jù)module中的文件生成配置文件,以及供我們?cè)陧撁嬷羞M(jìn)行調(diào)用的i18n對(duì)象。

utils.ts

我們通過遞歸,將整個(gè)對(duì)象的value都變成intl.get的返回值。這樣,我們?cè)陧撁嬷芯涂梢灾苯舆@樣書寫,非常方便快捷。

我們還需要生成與之對(duì)應(yīng)的國(guó)際化配置文件,主要使用babel進(jìn)行操作。

generator.js

如果我們需要傳遞參數(shù)進(jìn)到配置當(dāng)中,可以這樣操作。

定義時(shí)按照規(guī)則定義。

user.ts

調(diào)用時(shí)將參數(shù)傳入

formatMessage函數(shù),templete在我們頁面調(diào)用時(shí)并不關(guān)心,只是為了我們使用babel生成配置文件時(shí)使用。

utils.ts

經(jīng)過這樣的簡(jiǎn)單處理,我們就能非常方便的進(jìn)行國(guó)際化操作,因?yàn)橛辛舜a提示,所以像一些通過的詞匯,都可以先到common根據(jù)英文查找,避免了一個(gè)詞匯到處都有的問題。

antd項(xiàng)目中國(guó)際化改造的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
东辽县| 湛江市| 育儿| 江口县| 都江堰市| 西乌珠穆沁旗| 青河县| 秭归县| 大兴区| 龙游县| 威远县| 陵水| 延寿县| 东安县| 封开县| 津市市| 松潘县| 公安县| 南和县| 清原| 阿图什市| 渝北区| 新野县| 瑞金市| 富裕县| 清远市| 遂平县| 长海县| 德庆县| 黔南| 长兴县| 报价| 渑池县| 浑源县| 双流县| 工布江达县| 改则县| 永定县| 贵定县| 甘洛县| 绿春县|