我在React应用程序中使用i18next框架进行翻译。这是我的translation.ts文件
import i18next from 'i18next'
import { LocalisationKeys, LocalisationKeysProps } from './words'
export const language = (country) => {
switch (country) {
case 1:
if (i18next.language !== "en") i18next.changeLanguage("en")
break
case 2:
if (i18next.language !== "bg") i18next.changeLanguage("us")
break
case 3:
if (i18next.language !== "bg") i18next.changeLanguage("au")
break
default:
if (i18next.language !== "es") i18next.changeLanguage("es")
break
}
}
export const translateMe = (keySelector: (object: LocalisationKeysProps) => string, params?: any) => {
return i18next.t(keySelector(LocalisationKeys), params)
}
当我想翻译某些东西时,我使用translateMe
作为函数,该函数对于某个键返回一个值(它返回字符串,这是正确的单词翻译)。问题是它在.ts文件中不起作用,它不断显示给我未定义的信息。有谁知道i18next翻译为什么以及何时给出undefined?我在这方面相对较新,因此,如果您有什么可以帮助我解决此问题的内容,请以评论的形式发送。我希望这个问题能得到澄清。