jsx-eslint/eslint-plugin-react

no-unused-prop-types rule does not recognise component that returns an array

Open

#1,682 opened on 2018年2月8日

GitHub で見る
 (6 comments) (2 reactions) (0 assignees)JavaScript (2,797 forks)batch import
enhancementhelp wantedreact 16

Repository metrics

Stars
 (8,630 stars)
PR merge metrics
 (30d に merged PR はありません)

説明

Example:

import React from 'react';
import PropTypes from 'prop-types';

const TestComponent = () => (
  ['one', 'two', 'three'].map(text => <div>{ text }</div>)
);

TestComponent.propTypes = {
  customClass: PropTypes.string,
};

export default TestComponent;

React 16 allows for arrays to be returned from components, but in the above example, the no-unused-prop-types seems to not recognise that customClass is unused. It does detect it when the component is changed to:

const TestComponent = () => {
  const componentArr = ['one', 'two', 'three'].map(text => <div>{ text }</div>);
  return <div>{ componentArr }</div>;
};

コントリビューターガイド