| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 | 
							- <!DOCTYPE html>
 
- <html lang="en">
 
- <head>
 
-     <meta charset="UTF-8">
 
-     <meta name="viewport" content="width=device-width, initial-scale=1.0">
 
-     <title>Document</title>
 
-     <!-- jsx 语法浏览器不识别 jsx => js 浏览器可识别的语言 -->
 
-     <script src="./babel.min.js"></script>
 
-     <!-- react的核心库 -->
 
-     <script src="./react.development.js"></script>
 
-     <!-- 解析react中的dom库 -->
 
-     <script src="./react-dom.development.js"></script>
 
- </head>
 
- <body>
 
-     <div id="root">
 
-     </div>
 
-     <script type="text/babel">
 
-         let root = ReactDOM.createRoot(document.getElementById("root"));
 
-         function App() {
 
-             const user = '小红';
 
-             return (
 
-                 <div>
 
-                     <h1>Hello, React!</h1>
 
-                     <p>This is a simple React app.</p>
 
-                     <Child use={user} />
 
-                 </div>
 
-             );
 
-         }
 
-         class Child extends React.Component {
 
-             // 类组件有状态
 
-             // <button></button>
 
-             // const num = 5;
 
-             // 构造器 用于给组件实例初始化
 
-             constructor(props) {
 
-                 super(props);  // 继承父类属性和方法
 
-                 // this 可以访问当前创建的实例 但是 一定要在 调用super函数之后才可以使用
 
-                 this.state = {
 
-                     num: 5
 
-                 } // 类似于Vue中的data属性 组件的自身的状态
 
-             }          
 
-             render() {
 
-                 console.log(this.props)  
 
-                 this.state.num = 30;
 
-                 return (<div>
 
-                     <button>-</button>
 
-                     <span>{this.state.num}</span>
 
-                     <button>+</button>
 
-                 </div>)
 
-             }
 
-         }
 
-         root.render(<App/>)        
 
-     </script>
 
- </body>
 
- </html>
 
 
  |