欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 健康 > 美食 > React-02初学hello_react(JSX,创建React根节点,引入对应React库,render渲染DOM)

React-02初学hello_react(JSX,创建React根节点,引入对应React库,render渲染DOM)

2025/4/17 16:37:25 来源:https://blog.csdn.net/2301_76671906/article/details/146976279  浏览:    关键词:React-02初学hello_react(JSX,创建React根节点,引入对应React库,render渲染DOM)

1.React JSX

        React使用JSX来代替常规的js,JSX用来声明React当中的元素,JSX是js的语法扩展。

const element = <h1>Hello, world!</h1>;

2.React基础demo

2.1 创建React根节点

       如果要将元素渲染到DOM中比如将上h1元素渲染到DOM中,创建定义根节点,React一般只定义一个根节点,根节点中的内容由React DOM来进行管理。

 <!-- 容器 --><div id="test"></div>
2.2 引入对应React库
    <!-- {/* // 引入 React核心库 */} --><script src="https://unpkg.com/react@16/umd/react.production.min.js"></script><!-- {/* // 引入 react-dom 用于支持 react 操作 DOM */} --><script src="https://unpkg.com/react-dom@16/umd/react-dom.production.min.js"></script><!-- {/* // 引入 babel:1. ES6 ==> ES5 2. jsx ==> js */} --><script src="https://unpkg.com/babel-standalone@6/babel.min.js"></script>
2.3 引入JSX语法创建虚拟DOM并渲染

       React元素是构建React应用的最小单元,React元素是不可变对象,一旦创建就不能更改。

  ReactDOM.render 方法将 element 渲染到之前创建的根节点中。

 <script type="text/babel">// 1. 创建虚拟 DOMconst VDOM = <h1>Hello,React</h1>// 2. 渲染虚拟DOM到页面ReactDOM.render(VDOM,document.getElementById('test'))</script>
2.4 整体代码 
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Hello,React</title>
</head><body><!-- 容器 --><div id="test"></div><!-- {/* // 引入 React核心库 */} --><script src="https://unpkg.com/react@16/umd/react.production.min.js"></script><!-- {/* // 引入 react-dom 用于支持 react 操作 DOM */} --><script src="https://unpkg.com/react-dom@16/umd/react-dom.production.min.js"></script><!-- {/* // 引入 babel:1. ES6 ==> ES5 2. jsx ==> js */} --><script src="https://unpkg.com/babel-standalone@6/babel.min.js"></script><!-- {/* // 引入 JSX 语法 */} --><script type="text/babel">// 1. 创建虚拟 DOMconst VDOM = <h1>Hello,React</h1>// 2. 渲染虚拟DOM到页面ReactDOM.render(VDOM,document.getElementById('test'))</script>
</body></html>

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词