React 组建进阶、children 属性、props 校验-场景使用、 props 校验-规则说明、props 校验-默认值、defaultProps、PropTypes

React 组建进阶

children 属性

学习目标: 掌握 props 中 children 属性的用法

children 属性是什么
表示该组件的子节点,只要组件内部有子组件节点,props 中就有该属性
children 可以是什么

  1. 普通文本
  2. 普通标签元素
  3. 函数
  4. JSX

props 校验-场景使用

学习目标: 掌握组件 props 的校验写法,增加组件的健壮性

对于组件来说,props 是由外部传入的,我们无法保证组件使用者传入什么格式的数据,如果传入的数据格式不对,就有可能导致组件内部错误,组件使用者可能报错了也不知道为什么 > 例:

const List = (props) => {
   
   
  const arr = props.colors
  const lis = arr.map((item, index) => <li key={
   
   index}>{
   
   item.name}</li>)
}
;<list colors={
   
   19} />

面对这样的问题,我们可以使用 props 校验解决
实现步骤:

  1. 安装校验包 yarn add prop-type
  2. 导入prop-types
  3. 使用组件名。propTypes = {}给组件添加校验规则
    代码实现:
import React from 'react'
import PropTypes from 'prop-types'
function Test({
    
     list }) {
   
   
  return (
    <div>
      {
   
   list.map((item) => (
        <p key={
   
   item}>{
   
   item}</p>
      ))
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

雨落云尚

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值