React,何时使用 propTypes

Kyl*_*son 1 javascript reactjs react-proptypes

当在没有所需道具的情况下开发内部组件时会很快失败,我觉得道具需求检查是在测试中执行的,并且应该从生产代码中排除 propTypes 的附加权重。我说的是不需要用户输入并具有静态道具的组件。

例子:

const Button = ({ label, onClick }) => (
    <button type="button" onClick={ onClick }>{ label }</button>
);
Run Code Online (Sandbox Code Playgroud)

在我看来,propTypes 将是此类组件的无关运行时代码。

Ale*_*der 5

使用 prop-types 是一种最佳实践,但没有人强迫你也使用它们。所以如果是个人项目,你觉得不需要道具类型,没有人会责怪你。

但是当你在一个多人项目或一个库/npm 包上工作时,总是使用 prop-types。您的按钮现在可能不需要很多道具,但您永远不知道将来需要什么功能。一旦你意识到你的组件正在增长并且你需要回顾性地实现 prop-types,你就会后悔没有使用 prop-types。

所以:如果你和一个小组或图书馆一起工作,总是使用 prop-types。如果没有,这取决于您,但请记住,在编写组件后一段时间必须实现 prop-types 可能是一件非常痛苦的事情。

在我看来,propTypes 将是此类组件的无关运行时代码。

对于生产代码,这就是我推荐以下babel 插件的原因