美文网首页
PropTypes与DefaultProps的应用

PropTypes与DefaultProps的应用

作者: 泡杯感冒灵 | 来源:发表于2022-03-13 18:05 被阅读0次
每个组件都有自己的props参数,这些参数是从父组件接收的属性。在接收参数的时候,我们该如何对参数类型做校验,如何设置参数的默认值呢?
  • 参数类型的校验 PropTypes
// 第一步就是引入,因为脚手架工具已经自带了prop-types这个包,所以我们可以直接引入。
import PropTypes from 'prop-types';

// 第二步,组件名称.propTypes 后边跟一个对象,对象里是要校验的属性。
TodoItem.propTypes = {
    content: PropTypes.string,
    index: PropTypes.string,
    deleteItem: PropTypes.func
}

// 注意,如果子组件里,使用了一个父组件并未传递的属性,是不会报错的。这个时候,我们需要给这个属性设置一个 isRequired的校验,父组件没有传的时候,会报错。
TodoItem.propTypes = {
    content: PropTypes.string,
    index: PropTypes.number,
    deleteItem: PropTypes.func,
    test:PropTypes.string.isRequired
}
// 

  • 参数默认值的设置
// 如果子组件属性校验要求某个属性,必须要传,但是父组件又没有传或者传不了,未避免报错,可以设置一个默认值
TodoItem.defaultProps = {
    test: 'hello world'
}

相关文章

网友评论

      本文标题:PropTypes与DefaultProps的应用

      本文链接:https://www.haomeiwen.com/subject/ddfddrtx.html