React中使用PropTypes进行类型检查

  • 随着你的应用程序不断增长,你可以通过类型检查捕获大量错误。
  • 对于某些应用程序来说,你可以使用 Flow 或 TypeScript 等 JavaScript 扩展来对整个应用程序做类型检查。
  • 但即使你不使用这些扩展,React 也内置了一些类型检查的功能。
    要在组件的 props 上进行类型检查,你只需配置特定的 propTypes 属性

示例
引入 PropTypes,方式:import PropTypes from 'prop-types'

  1. 通过props接收到父组件中传递的数据

    在这里插入图片描述

  2. 规定传递的数据类型

    在这里插入图片描述

IsRequired

设置值是必传项,不传会报错

PropTypes.element

通过PropTypes.element规定传递的类型是一个元素

  xxx.propTypes = {
    xxx: xxx.PropTypes.element
  }

默认 Prop 值

通过配置defaultProps属性定义props的默认值

  xxx.defaultProps= {
    xxx: 'Hello React!' // 不传值,此字段为默认内容
  }

其他数据类型

  xxx.propTypes = {
    xxx: PropTypes.bool // 必须为布尔类型
    xxx: PropTypes.func // 必须为函数
    xxx: PropTypes.number // 必须为数字类型
    xxx: PropTypes.object // 必须为对象
    xxx: PropTypes.string // 必须为字符串
    xxx: PropTypes.symbol // 必须为symbol类型
    xxx: PropTypes.oneOf(['haha', 'nishizhu']) // 传递的值,为指定的值
    xxx: PropTypes.shape({ // 可以指定一个对象内由特定的类型值组成
    color: PropTypes.string,
    fontSize: PropTypes.number
  }),
  }

相关文章

一、前言 在组件方面react和Vue一样的,核心思想玩的就是组件...
前言: 前段时间学习完react后,刚好就接到公司一个react项目...
前言: 最近收到组长通知我们项目组后面新开的项目准备统一技...
react 中的高阶组件主要是对于 hooks 之前的类组件来说的,如...
我们上一节了解了组件的更新机制,但是只是停留在表层上,例...
我们上一节了解了 react 的虚拟 dom 的格式,如何把虚拟 dom...