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>
相关推荐
弓.长.9 小时前
React Native 鸿蒙跨平台开发:BottomSheet 底部面板详解
javascript·react native·react.js
开开心心_Every9 小时前
免费窗口置顶小工具:支持多窗口置顶操作
服务器·前端·学习·macos·edge·powerpoint·phpstorm
摘星编程9 小时前
React Native for OpenHarmony 实战:Permissions 权限管理详解
javascript·react native·react.js
闲蛋小超人笑嘻嘻10 小时前
Vue 插槽:从基础到进阶
前端·javascript·vue.js
摘星编程10 小时前
React Native for OpenHarmony 实战:SearchBar 搜索栏详解
javascript·react native·react.js
梦65010 小时前
Vue2 与 Vue3 对比 + 核心差异
前端·vue.js
tiandyoin10 小时前
给 MHTML 添加滚动条.mhtml
前端·chrome·html·mhtml
遗憾随她而去.10 小时前
前端大文件上传(切片并发/断点续传/秒传/WebWorker 计算Hash) 含完整代码
前端
AKA__老方丈11 小时前
vue-cropper图片裁剪、旋转、缩放、实时预览
前端·vue.js
梦65012 小时前
Vue 单页面应用 (SPA) 与 多页面应用 (MPA) 对比
前端·javascript·vue.js