Я занимаюсь разработкой приложения с использованием React / Redux с Typescript и относительно новым для Typescript с React. У меня есть функциональный компонент типа React.SFC
, и поскольку я использую Redux, я подключаю этот компонент с mapStateToProps and mapDispatchToProps
, используя connect HO C. Но, похоже, есть какая-то проблема в том, как я передаю реквизит или определяю свой компонент.
Я получаю сообщение об ошибке ниже:
Argument of type 'SFC<AppProps>' is not assignable to parameter of type 'ComponentType
Ниже перечислены реквизиты, доступные для компонента:
fetchUsers: typeof fetchUsers;
users: User[];
isLoading: boolean;
Ниже приведен код для Users.tsx -
import React from 'react';
import { connect } from 'react-redux';
import Loader from '../Loader/Loader';
import './Users.css';
import { fetchUsers } from '../../Store/Users/actions';
import { AppState } from '../../index';
import { User } from '../../Store/Users/types';
interface AppProps {
fetchUsers: typeof fetchUsers;
users: User[];
isLoading: boolean;
}
const Users: React.SFC<AppProps> = (props) => {
const { isLoading } = props;
const showLoader = () => {
fetchUsers();
};
React.useEffect(() => showLoader(), []);
return (
<div className="users">
{isLoading ? <Loader /> : <div>All users</div>}
</div>
);
};
const mapStateToProps = (state: AppState) => ({
users: state.users,
isLoading: state.isLoading,
});
export default connect(
mapStateToProps, { fetchUsers },
)(Users);
скриншот кода:
Скриншот ошибки:
В чем может быть причина этой ошибки?