为什么使用prop-types?
父组件传值给子组件时的类型约束,方便后期维护;
import React from 'react'
import PropTypes from 'prop-types';
function Son(
{optionalArray,
optionalBool,
optionalFunc,
optionalNumber,
optionalObject,
optionalString,
optionalSymbol
}
){
return (
<div>
测试
</div>
);
// 对传入的值进行约束
Son.propTypes = {
optionalArray: PropTypes.array,//检测数组类型
optionalBool: PropTypes.bool,//检测布尔类型
optionalFunc: PropTypes.func,//检测函数(Function类型)
optionalNumber: PropTypes.number,//检测数字
optionalObject: PropTypes.object,//检测对象
optionalString: PropTypes.string.isRequired,//检测字符串 isRequired 为该值为必传
optionalSymbol: PropTypes.symbol,//ES6新增的symbol类型
}
// 传入的值如果为空,那就进行默认赋值
Son.defaultProps = {
optionalArray: [],
optionalBool:true ,
optionalFunc: ()=>{} ,
optionalNumber:10 ,
optionalObject: {id:1,num:2} ,
optionalString:"hello world" ,
optionalSymbol:
}
}