jsx-eslint / eslint-plugin-react

React-specific linting rules for ESLint
MIT License
8.93k stars 2.77k forks source link

no-unused-prop-types cannot detect unused property #880

Open victor-homyakov opened 7 years ago

victor-homyakov commented 7 years ago
const Comp = (props) => <div className={props.nested.className}>{props.nested.text}</div>;
Comp.propTypes = {
    nested: React.PropTypes.object.isRequired,
    text: React.PropTypes.string.isRequired
};

Property text should be marked as unused. Rule configuration: "react/no-unused-prop-types": ["error", {skipShapeProps: true}].

EvHaus commented 7 years ago

In your example code, text is not used. So the error is displayed correctly. Your component uses props.nested.text but your have a PropTypes defined for props.text.

victor-homyakov commented 7 years ago

Please read description one more time. Property text is not used, but is not flagged as unused.