Eslint react / prop-types vs react / require-default-props

时间:2019-07-12 14:31:58

标签: reactjs eslint

谁能告诉我这两个eslint规则之间的区别。

react/prop-typesreact/require-default-props

据我了解,它们都做相同的事情。

2 个答案:

答案 0 :(得分:1)

反应/道具类型仅检查是否设置了道具类型。

react / require-default-props 强制开发人员为每个道具设置默认值。

const HelloWorld = ({ name }) => (
  <h1>Hello, {name}!</h1>
);

// eslint react/prop-types will complain if you leave out this block
HelloWorld.propTypes = {
  name: PropTypes.string
};

// eslint react/require-default-props checks for the following block
HelloWorld.defaultProps = {
  name: 'john'
};

ReactDOM.render(<HelloWorld />,  document.getElementById('app'));

答案 1 :(得分:1)

他们做同样的事情。

第一个是eslint规则,用于检查是否在prop-types中也定义了使用过的props。第二个是强制在defaultProps

中设置不需要的道具的规则