Добавление компонента Redux + машинописный текст без пропов, показывающих ошибку - PullRequest
0 голосов
/ 03 октября 2019

Я пытаюсь интегрировать машинопись в существующий код. В моем коде я использую nextjs, Reactionjs, Redux и Material-UI. Когда я пытаюсь импортировать компонент (SelectedFilters) без реквизита, я сталкиваюсь с проблемой.

//SelectedFilters Component
import * as React from 'react';
import { connect } from 'react-redux';
import Router, { useRouter } from 'next/router';
import PropTypes from 'prop-types';

const SelectedFilters = ({ selected, filters, dispatch }: { selected: typeInitialState, filters: typeFilter, dispatch: Dispatch<AppActions> }) => {

... React stuff

}
const arrayOfFilter = {
  id: PropTypes.number.isRequired,
  name: PropTypes.string.isRequired,
};
SelectedFilters.propTypes = {
  selected: PropTypes.shape({
    states: PropTypes.arrayOf(PropTypes.number).isRequired,
    parties: PropTypes.arrayOf(PropTypes.number).isRequired,
    education: PropTypes.arrayOf(PropTypes.number).isRequired,
    marital: PropTypes.arrayOf(PropTypes.number).isRequired,
    age: PropTypes.arrayOf(PropTypes.number).isRequired,
  }).isRequired,
  filters: PropTypes.shape({
    states: PropTypes.arrayOf(PropTypes.shape(arrayOfFilter)).isRequired,
    parties: PropTypes.arrayOf(PropTypes.shape(arrayOfFilter)).isRequired,
    education: PropTypes.arrayOf(PropTypes.shape(arrayOfFilter)).isRequired,
    marital: PropTypes.arrayOf(PropTypes.shape(arrayOfFilter)).isRequired,
  }).isRequired,
  dispatch: PropTypes.func.isRequired,
};

const mapStateToProps = (state:AppState) => ({
  selected: state.selected,
  filters: state.filters,
});

export default connect(mapStateToProps)(SelectedFilters);

//SearchPage component 
import * as React from 'react';
import { connect } from 'react-redux';
import Router, { useRouter } from 'next/router';
import PropTypes from 'prop-types'; 

const SearchPage  = ({ dispatch, selected, filters }: Iprops ):JSX.Element => { 

...React stuff

return (
<div>
 <SelectedFilters/>
</div>
)
}

const mapStateToProps = (state:AppState):StateProps => ({
  filters: state.filters,
  selected: state.selected,
});

export default connect(mapStateToProps)(SearchPage);

При наведении курсора на "<SelectedFilters/>" появляется сообщение об ошибке: Тип "{}" пропускаетСледующие свойства типа 'Pick<InferProps<{ selected: Validator<InferProps<{ states: Validator<(number | null | undefined)[]>; parties: Validator<(number | null | undefined)[]>; education: Validator<(number | null | undefined)[]>; marital: Validator<...>; age: Validator<...>; }>>; filters: Validator<...>; dispatch: Validator<...>; }>, "dispa...': отправка, выбранные, фильтры

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