<!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8"> <title>JSX的注意</title> <script src="script/react.development.js"></script> <script src="script/react-dom.development.js"></script> <!-- 引入babel --> <script src="script/babel.min.js"></script> </head> <body> <div id="root"></div> <script type="text/babel"> /* * JSX的注意事项 * 1. JSX不是字符串,不要加引号 * 2. JSX中html标签应该小写,React组件应该大写开头 * 3. JSX中有且只有一个根标签 * 4. JSX的标签必须正确结束(自结束标签必须写/) * 5. 在JSX中可以使用{}嵌入表达式 * - 有值的语句的就是表达式 * 6. 如果表达式是空值、布尔值、undefined,将不会显示 * 7. 在JSX中,属性可以直接在标签中设置 * 注意: * class需要使用className代替 * style中必须使用对象设置 * style={{background:'red'}} * * */ function fn() { return 'hello'; } const name = '孙悟空'; const div = <div id="box" onClick={() => { alert('哈哈') }} className="box1" style={{backgroundColor: "yellowgreen", border: '10px red solid'}} > 我是一个div <ul> <li>列表项</li> </ul> <input type="text"/> <div> {name} <br/> {1 + 1} <br/> {fn()} <br/> {NaN} <br/> </div> </div>; // alert(div); const root = ReactDOM.createRoot(document.getElementById('root')); root.render(div); </script> </body> </html>