9.props.html 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  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="./babel.min.js"></script>
  8. <script src="./react.development.js"></script>
  9. <script src="./react-dom.development.js"></script>
  10. </head>
  11. <body>
  12. <div id="root"></div>
  13. <script type="text/babel">
  14. /*
  15. * 单向数据流:只能从父组件传给子组件
  16. * props 只读 不可修改
  17. * 没有this 没有生命周期
  18. * */
  19. function Parent() {
  20. return (
  21. <div>
  22. <h1>你好</h1>
  23. <hr />
  24. <hr />
  25. <Child name='图图' age={3} header={<h2>我是子元素的头部</h2>} />
  26. </div>
  27. )
  28. }
  29. // function Child({ name, age, header }) {
  30. // return (
  31. // <div>
  32. // {header}
  33. // <p>我叫{name},今年{age}岁</p>
  34. // </div>
  35. // )
  36. // }
  37. function Child(props) {
  38. // props.age +
  39. console.log(props, '111')
  40. return (
  41. <div>
  42. {props.header}
  43. <p>我叫{props.name},今年{props.age}岁</p>
  44. </div>
  45. )
  46. }
  47. const element = <Parent />
  48. const container = document.getElementById("root");
  49. const root = ReactDOM.createRoot(container)
  50. root.render(element);
  51. </script>
  52. </body>
  53. </html>