🎶 Sym - 一款用 Java 实现的现代化社区(论坛/BBS/社交网络/博客)平台

📕 思源笔记 - 一款桌面端笔记应用,支持 Windows、Mac 和 Linux

🎸 Solo - B3log 分布式社区的博客端节点,欢迎加入下一代社区网络

♏ Vditor - 一款浏览器端的 Markdown 编辑器

React 中如何使用 prop 检查?

2019-03-16

回答

当应用程序在开发模式下运行时,React 将自动检查我们在组件上设置的所有属性,以确保他们的数据类型是正确的。对于不正确的数据类型,他将在开发模式下生成警告消息并在控制台输出。由于检查的性能影响,他们在生产模式下将不进行检查。必须传入的属性需包含 isRequired

例如,以下为我们为组件定义的 propTypes

import PropTypes from "prop-types"

class User extends React.Component {
  static propTypes = {
    name: PropTypes.string.isRequired,
    age: PropTypes.number.isRequired
  }

  render() {
    return (
      <h1>Welcome, {this.props.name}</h1>
      <h2>Age, {this.props.age}
    )
  }
} 

加分回答

  • 我们可以自定义 propTypes
  • 使用 propTypes 并不是必需的,但这是一个非常棒的减少错误的实践
  • 使用 PropTypes.element 可以指定只传递一个子代
  • defaultProps 用来确保 this.props 在父组件没有指定的情况下有一个初始值。类型检查发生在 defaultProps 赋值之后,所以类型检查也会应用在 defaultProps 上。

返回总目录

30 秒面试系列一


欢迎注册黑客派社区,开启你的博客之旅。让学习和分享成为一种习惯!

留下你的脚步