React组件使用PropTypes 进行类型检查
程序员文章站
2024-01-29 15:56:52
...
PropTypes
每个组件的props都接收父组件的参数,我们可以使用PropsTypes来校验父组件传过来的参数是否合法,如果传递的值不合法就控制台就会有明显的警告
使用
首先你需要通过在终端npm install prop-types安装一个叫prop-types的第三方包
//示例:
import PropTypes from 'prop-types';
Children.propTypes = {
name: PropTypes.string,
age: PropTypes.number,
gender: PropTypes.bool.isRequired,
speak:PropTypes.func.isRequired
}
你可以在任何 PropTypes 属性后面加上 isRequired
,确保这个 prop 没有被提供时,会打印警告信息。上面代码说明,在使用Children这个组件的时候必须传入gender和doEat这个两个属性,而且传入gender的类型是一个boolean值,speak是一个函数,name是一个字符串,age是一个数值类型。
默认值
当子组件要求父组件必须向子组件传递这个参数,而父组件没有办法传递时,可以使用使用 DefaultProps 给参数设置默认值
import PropTypes from 'prop-types';
Children.propTypes = {
name: PropTypes.string,
age: PropTypes.number.isRequired,
gender: PropTypes.bool.isRequired,
speak:PropTypes.func.isRequired
}
Children.propTypes = {
age:0
}
这样我们在父组件中使用Children是默认每个Children中的age为0
多个类型
使用PropTypes 设定属性的类型也可以是多类型的,例如ant design组件库中的TextArea组件的autoSize属性你传入的既可以是一个boolean可以是一个对象。
//设置多类型示例
import PropTypes from 'prop-types';
Children.propTypes = {
Think: PropTypes.oneOfType([PropTypes.string, PropTypes.number])
}
上一篇: Python-判断回文
推荐阅读
-
React组件使用PropTypes 进行类型检查
-
react 使用 PropTypes 进行类型检查
-
web前端高级React - React从入门到进阶之使用PropTypes进行类型检查
-
1.9 react props类型检查 defaultProps默认值 propTypes类型 isRequired必传参数
-
React 属性默认值和 类型检查 PropTypes的使用
-
react中使用 PropTypes 进行类型检查
-
深入理解react 组件类型及使用场景
-
详解使用React进行组件库开发
-
项目非组件文件进行路由跳转【react与vue等其他框架均可使用】
-
react(58)——使用路由的时候虽然不展示所有的路由,但是会一开始就加载所有的路由组件,使用Suspense组件和lazy函数进行解决