React Props 验证

2025年3月17日 | 阅读 3 分钟

Props 是将只读属性传递给 React 组件的重要机制。 Props 通常需要在组件中正确使用。 如果使用不正确,组件可能无法按预期运行。 因此,需要使用 props 验证来改进 react 组件。

Props 验证是一个工具,可以帮助开发人员避免未来的错误和问题。 这是强制正确使用组件的有用方法。 它使您的代码更具可读性。 React 组件使用特殊属性 PropTypes,通过验证通过 props 传递的值的数据类型来帮助您捕获错误,尽管没有必要使用 propTypes 定义组件。 但是,如果您在组件中使用 propTypes,它可以帮助您避免意外错误。

验证 Props

App.propTypes 用于 react 组件中的 props 验证。 当某些 props 以无效类型传递时,您将在 JavaScript 控制台上收到警告。 指定验证模式后,您将设置 App.defaultProps。

语法

ReactJS Props 验证器

ReactJS props 验证器包含以下验证器列表。

序号PropsType描述
1.PropTypes.anyprops 可以是任何数据类型。
2.PropTypes.arrayprops 应该是一个数组。
3.PropTypes.boolprops 应该是一个布尔值。
4.PropTypes.funcprops 应该是一个函数。
5.PropTypes.numberprops 应该是一个数字。
6.PropTypes.objectprops 应该是一个对象。
7.PropTypes.stringprops 应该是一个字符串。
8.PropTypes.symbolprops 应该是一个 symbol。
9.PropTypes.instanceOfprops 应该是特定 JavaScript 类的实例。
10.PropTypes.isRequired必须提供 props。
11.PropTypes.elementprops 必须是一个 element。
12.PropTypes.nodeprops 可以呈现任何内容:数字、字符串、元素或包含这些类型的数组(或片段)。
13.PropTypes.oneOf()props 应该是几种特定值类型之一。
14.PropTypes.oneOfType([PropTypes.string,PropTypes.number])props 应该是一个可以是多种类型之一的对象。

示例

在这里,我们创建了一个包含所有我们需要 props 的 App 组件。 在这个例子中,App.propTypes 用于 props 验证。 对于 props 验证,您必须添加以下行:在 App.js 文件中添加 import PropTypes from 'prop-types'

App.js

Main.js

输出

React Props Validation

ReactJS 自定义验证器

ReactJS 允许创建自定义验证函数来执行自定义验证。 以下参数用于创建自定义验证函数。

  • props: 它应该是组件中的第一个参数。
  • propName: 它是将要验证的 propName。
  • componentName: 它是将再次验证的 componentName。

示例


下一个主题State Vs Props