我正在使用 React-i18next 库,我需要在函数t()
内部获取翻译函数。
export function translateCell(cell) {
const { t } = useTranslation();
return (t(cell));
}
使用useTranslation()
时失败并出现错误
Hooks 只能在函数组件的主体内部调用。
我尝试在初始化中使用I18nextProvider
and ,但是两种设置都会产生相同的错误。.use(initReactI18next)
我是否以错误的方式使用它,或者我误解了什么?
编辑: 我发现,只有将呈现为组件的函数才能使用 useTranslation。像
function export MyComponent (cell) {
const { t } = useTranslation();
return (<div>{t(cell)}</div>);
}
...
render(){
<MyComponent/>