8. PropTypes与DefaultProps

PropTypes与DefaultProps

导入

1
import PropTypes from 'prop-types'

propTypes

校验prop的类型

1
2
3
4
5
6
7
8
9
10
11
// 为父组件传递来的值进行校验
TodoItem.propTypes = {
// 字符串类型,且必传
content: PropTypes.string.isRequired,
// 函数类型
deleteItem: PropTypes.func,
// 数字类型
index: PropTypes.number,
default_props: PropTypes.string.isRequired,
}
更多类型https://reactjs.org/docs/typechecking-with-proptypes.html#___gatsby

defaultProps

为prop设置默认值

1
2
3
4
// 设置默认值
TodoItem.defaultProps = {
default_props: 'xxxx',
}

https://github.com/rexyan/simple_react/tree/PropTypes%E4%B8%8EDefaultProps