Возникла проблема с React.SF C с использованием машинописи - PullRequest
0 голосов
/ 21 марта 2020

Я занимаюсь разработкой приложения с использованием 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);

скриншот кода:

enter image description here

Скриншот ошибки:

enter image description here

В чем может быть причина этой ошибки?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...