我正在尝试将 react-i18next 与 Typescript 一起使用,但遇到了一些问题。
这是我期待的道具的界面。
import * as i18n from 'i18next';
export interface ReactI18nProps {
t: i18n.TFunction;
}
然后我有一个导航组件,由我编写。
import { translate } from 'react-i18next';
function Navigation({ t }: ReactI18nProps) {
const userProfile = JSON.parse(localStorage.getItem('profile') || '');
return (
...
);
}
export default translate('navigation')(Navigation);
现在我只想渲染这个我已经组成的组件
function Appliances({ location }: NavLinkProps) {
const userId = location && location.state.userId;
return (
<div>
<Navigation />
</div>
);
}
但是,在这个时刻,TS 失败了,我收到以下错误
Type '{}' is not assignable to type 'IntrinsicAttributes & ReactI18nProps'.
Type '{}' is not assignable to type 'ReactI18nProps'.
Property 't' is missing in type '{}'.
有人可以解释我做错了什么。