6.props.html 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <title>Document</title>
  7. <script src="../js/babel.min.js"></script>
  8. <script src="../js/react.development.js"></script>
  9. <script src="../js/react-dom.development.js"></script>
  10. </head>
  11. <body>
  12. <div id="root"></div>
  13. <script type="text/babel">
  14. let fatherStyle = {
  15. border: '1px solid #000',
  16. padding: '10px'
  17. }
  18. let sonStyle = {
  19. border: '1px dashed #f00',
  20. padding: '10px'
  21. }
  22. function Father() {
  23. return (
  24. <div style={fatherStyle}>
  25. <p>我是父级标签</p>
  26. <Son name='zhangsan' age={18}/>
  27. </div>
  28. )
  29. }
  30. function Son(props) {
  31. return (
  32. <div style={sonStyle}>
  33. <p>我是子级标签</p>
  34. <p>名字是{props.name}</p>
  35. <p>年龄是{props.age}岁</p>
  36. <button onClick={() => {
  37. handelClick(props)
  38. }}>打印props</button>
  39. </div>
  40. )
  41. }
  42. function handelClick(props) {
  43. console.log('props', props)
  44. }
  45. let element = <Father/>
  46. ReactDOM.createRoot(document.querySelector('#root')).render(element)
  47. </script>
  48. </body>
  49. </html>