属性类型验证可以规定组件属性值的类型
注意:React.PropTypes自React v15.5起已弃用,使用prop-types库代替。
import PropTypes from 'prop-types';
class Greeting extends React.Component{
constructor(){
super();
this.state = {
text:Hello world
};
}
render(){
return(
<p>{this.state.text}</p>
)
}
}
Greeting.propTypes={
text:PropTypes.string //指定text类型为string
}
可指定的类型为:
PropTypes.array,
PropTypes.bool,
PropTypes.func,
PropTypes.number,
PropTypes.object,
PropTypes.string,
PropTypes.symbol,
PropTypes.node, //任何可被渲染的元素(包括数字、字符串、子元素或数组)
PropTypes.element, //React元素
PropTypes.func.isRequired, //当父组件没有提供属性时,会打印警告信息