我需要帮助 我收到此错误
./src/components/Header/Header.js
Attempted import error: 'UseTranslation' is not exported from 'react-i18next'.
它是一个新项目,我已逐步安装了https://react.i18next.com 但我在导入 UseTranslation
时遇到了问题在header.js中,我得到了这个
import { useTranslation } from 'react-i18next';
//style
import "./Header.scss";
class Header extends Component {
render() {
const { t, i18n } = useTranslation();
return (
<div className="container-header">
<div className="container-header__main">
<div className="container-header__main-overlay">
<div className="container-header__main-overlay__text">
<div className="container-header__main-overlay__text__title">
{t('hello')}
</div>
<div className="container-header__main-overlay__text__subtitle">
{t('hello2')}
</div>
</div>
</div>
</div>
</div>
);
}
}
export default Header;
这是我的i18n.js,我认为还可以
import i18n from "i18next";
import { reactI18nextModule } from "react-i18next";
import EN from './assets/translation/en.json';
import CZ from './assets/translation/cz.json';
const resources = {
en: {
translation: EN
},
cz:{
translation: CZ
}
};
i18n
.use(reactI18nextModule)
.init({
resources,
lng: "en",
fallbackLng: "en",
useSuspense: false,
});
export default i18n;
答案 0 :(得分:1)
它用于useTranslation
的{{1}},但是您使用的类组件是hook
Hoc
并在index.js中添加Suspense
import { withTranslation } from 'react-i18next';
const {t,i18n} =this.props
{t('hello2')}
export default withTranslation()(Header);