jsx-eslint/eslint-plugin-react

Object composition in propTypes causes 'default-props-match-prop-types' error

Open

#1,674 opened on Feb 2, 2018

View on GitHub
 (13 comments) (15 reactions) (0 assignees)JavaScript (2,797 forks)batch import
bugenhancementhelp wanted

Repository metrics

Stars
 (8,630 stars)
PR merge metrics
 (No merged PRs in 30d)

Description

Consider the following functioning example:

elementEventCardBaseShape = {
  calendarLink: mediaFileShape,
  mapLink: PropTypes.string,
  startDate: PropTypes.string,
  locationName: PropTypes.string,
  street: PropTypes.string,
  city: PropTypes.string,
  region: PropTypes.string
};

ElementEventCard.propTypes = {
  ...elementEventCardBaseShape,
  lang: PropTypes.string
};

ElementEventCard.defaultProps = {
  lang: 'en',
  calendarLink: {},
  mapLink: '',
  startDate: '',
  locationName: '',
  street: '',
  city: '',
  region: ''
};

Where all but 'lang' throw an error for said prop supposedly having no matching propType. Am I missing something?

Contributor guide