02_Hello_React案例

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>

    <div id="root"></div>
    
     <!-- 引入依赖 -->
     <script crossorigin src="https://unpkg.com/react@18/umd/react.development.js"></script>
     <script crossorigin src="https://unpkg.com/react-dom@18/umd/react-dom.development.js"></script> 
     <script src="https://unpkg.com/babel-standalone@6/babel.min.js"></script>
    
    <!-- 编写React代码 -->
    <script type="text/babel">

        const root = ReactDOM.createRoot(document.querySelector("#root"));
       
        //1.将文本定义成变量
        let message = "Hello World"

        //2.监听按钮的点击
        function btnClick(){
           
            //1.1修改数据
            message = "Hello React"

            // 2.重新渲染界面
            
            rootRender()
        }
       
        //3.封装一个渲染函数
        function rootRender(){
            root.render((
            <div>
                <h2>{message}</h2>
                <button onClick={btnClick}>修改文本</button>    
            </div>
            ))
        }

        rootRender()
    </script>

</body>
</html>
相关推荐
很晚很晚了41 分钟前
纯前端转全栈 Day 1:我从第一个 NestJS 接口开始
前端
Lee川2 小时前
从零解剖一个 AI Agent Tool是如何实现的
前端·人工智能·后端
wangruofeng3 小时前
Playwright 深度调研:为什么它成了浏览器自动化的新底座
前端·测试
__log5 小时前
Vue 2 → Vue 3 迁移实战指南:不只是升级语法,更是一次思维跃迁
react.js
李白的天不白5 小时前
SSR服务端渲染
前端
XinZong5 小时前
OpenClaw 实现「龙虾」vs 龙虾 vs 用户 ws对话实现方案 + 实际落地项目
javascript
卷帘依旧5 小时前
WebSocket 比 SSE 复杂在哪里
javascript
卷帘依旧6 小时前
SSE(Server-Sent Events)完全指南
前端
码云之上6 小时前
万星入坞:我们如何用三层插件体系干掉巨石应用
前端·架构·前端框架
kyriewen6 小时前
一口气讲清楚 Monorepo、Turborepo、pnpm、Changesets 到底是什么?
前端·架构·前端工程化