我正在瀏覽所有的i18next documentation,但仍然很困惑如何做到這一點。到目前爲止,我複製了他們的例子,我有以下幾點。react-i18next:在一個文件中的所有命名空間+在裝飾器中傳遞命名空間
目錄結構:
locales
->en
->ns1.json
->ns2.json
->fr
->ns1.json
->ns2.json
i18next配置:
i18n
.use(XHR)
.init({
lng: 'en',
fallbackLng: 'en',
debug: false,
interpolation: {
escapeValue: false,
},
})
我裝修我的部件,像這樣:
@translate(['ns1'], { wait: true })
所以,我對於語言的目錄,並不止一個文件每個命名空間。每個命名空間本質上都是一個視圖的翻譯。所以我大致從命名空間到React組件的映射。我想要做的就是把所有這些命名空間放在3個文件中(因爲我的所有組件都被分成應用程序的3個部分 - 管理員,用戶,公共)。這3個文件中的每一個都會有一堆命名空間。我希望每個組件仍然有一個名稱空間,所以我不僅要指定文件,還要指定裝飾器中的名稱空間,所以我不必每次都在我的translate函數中指定它。
這是否可能?如果沒有,我可以在一個文件中而不是3個所有命名空間?