< ! DOCTYPE html>
< html lang= "en" >
< head> < meta charset= "UTF-8" > < title> 对props进行限制< / title>
< / head>
< body> < ! -- 准备好一个“容器” -- > < div id= "test1" > < / div> < div id= "test2" > < / div> < div id= "test3" > < / div> < ! -- 引入react核心库 -- > < script type= "text/javascript" src= "../js/react.development.js" > < / script> < ! -- 引入react- dom,用于支持react操作DOM -- > < script type= "text/javascript" src= "../js/react-dom.development.js" > < / script> < ! -- 引入babel,用于将jsx转为js -- > < script type= "text/javascript" src= "../js/babel.min.js" > < / script> < ! -- 引入prop- types,用于对组件标签属性进行限制 -- > < script type= "text/javascript" src= "../js/prop-types.js" > < / script> < script type= "text/babel" > class Person extends React. Component { constructor ( props) { super ( props) console. log ( 'constructor' , this . props) ; } static propTypes = { name: PropTypes. string. isRequired, sex: PropTypes. string, age: PropTypes. number, } static defaultProps = { sex: '男' , age: 18 } render ( ) { const { name, age, sex} = this . propsreturn ( < ul> < li> 姓名:{ name} < / li> < li> 性别:{ sex} < / li> < li> 年龄:{ age+ 1 } < / li> < / ul> ) } } ReactDOM. render ( < Person name= "jerry" / > , document. getElementById ( 'test1' ) ) < / script>
< / body>
< / html>