React的JSX使用入门案例

01 入门案例

1、引入react的依赖:<script src="./static/react18.3.1/react.development.js"></script>

2、引入react-dom的依赖:<script src="./static/react18.3.1/react-dom.development.js"></script>

3、使用函数声明一个React的组件

function LikeButton(){return React.createElement("button", {onClick: () => {console.log("Like button is clicked")}}, "Clike Me")
}

渲染组件:

  • 创建根节点:const rootNode = document.getElementById("root")
  • 创建根节点渲染对象:const root = ReactDOM.createRoot(rootNode);
  • 使用根节点渲染对象渲染组件:root.render(React.createElement(LikeButton))
const rootNode = document.getElementById("root")
const root = ReactDOM.createRoot(rootNode);
root.render(React.createElement(LikeButton))

完整代码:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>React Demo</title>
</head>
<body><!-- 创建根节点 --><div id="root"></div><!-- 引入React18的依赖 --><script src="./static/react18.3.1/react.development.js"></script><script src="./static/react18.3.1/react-dom.development.js"></script><!-- 核心代码 --><script>// 创建一个组件function LikeButton(){return React.createElement("button", {onClick: () => {console.log("Like button is clicked")}}, "Clike Me")}// 渲染组件const rootNode = document.getElementById("root")const root = ReactDOM.createRoot(rootNode);root.render(React.createElement(LikeButton))</script>
</body>
</html>

02JSX案例

要使用JSX,必须要满足:

  • 1、引入babel依赖:<script src="./static/react18.3.1/babel.min.js"></script>
  • 2、声明script的类型为babel类型:<script type="text/babel">

JSX支持像写HTML一样写JavaScript,是一种JavaScript+HTML混合编程的形式。

示例代码:

function LikeButton() {return (<button onClick={() => { console.log('button clicked')}}>Click Me</button>)
}

完整代码:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>React Demo</title>
</head>
<body><!-- 创建根节点 --><div id="root"></div><!-- 引入React18的依赖 --><script src="./static/react18.3.1/react.min.js"></script><script src="./static/react18.3.1/react-dom.min.js"></script><script src="./static/react18.3.1/babel.min.js"></script><!-- 核心代码 --><script type="text/babel">// 创建一个组件// 使用JSX语法改写function LikeButton() {return (<button onClick={() => { console.log('button clicked')}}>Click Me</button>)}// 渲染组件const rootNode = document.getElementById("root")const root = ReactDOM.createRoot(rootNode);root.render(React.createElement(LikeButton))</script>
</body>
</html>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/9543.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【项目申报】2024年西安市科技企业孵化器认定和申报条件、扶持政策须知

第一章 总 则 第一条 为营造激励自主创新的环境&#xff0c;加快科技成果转化&#xff0c;培育科技型中小企业&#xff0c;发展高新技术产业&#xff0c;促进西安市科技企业孵化器&#xff08;以下简称“孵化器”&#xff09;健康发展&#xff0c;努力建设创新型郴州&#xf…

AI绘画工具介绍

在科技日新月异的今天&#xff0c;AI绘画工具以其独特的魅力和无限的可能性&#xff0c;正在逐渐改变着我们对绘画的认知和创作方式。本文将详细介绍AI绘画工具的概念、原理、应用场景、优势与局限性&#xff0c;以及未来发展趋势&#xff0c;带您领略科技与艺术完美融合的奇妙…

深入了解二叉搜索树:原理、操作与应用

文章目录 二叉搜索树二叉搜索树的操作1.查找操作2.插入操作3.查找最大值或者最小值4.删除操作5.前序中序后序遍历 总结 二叉搜索树 形如上图的二叉树就是二叉搜索树&#xff0c;接下来我们来具体阐述一下什么是二叉搜索树。 二叉搜索树的概念&#xff1a;满足左子树的值小于根…

经济学SSCI期刊,中科院3区,IF=2+,难度不大,收稿范围广泛!

一、期刊名称 Information Economics and Policy 二、期刊简介概况 期刊类型&#xff1a;SSCI 学科领域&#xff1a;经济学 影响因子&#xff1a;2.8 中科院分区&#xff1a;3区 出版方式&#xff1a;订阅模式/开放出版 版面费&#xff1a;选择开放出版需支付$3190 三、…

C++ | Leetcode C++题解之第78题子集

题目&#xff1a; 题解&#xff1a; class Solution { public:vector<int> t;vector<vector<int>> ans;void dfs(int cur, vector<int>& nums) {if (cur nums.size()) {ans.push_back(t);return;}t.push_back(nums[cur]);dfs(cur 1, nums);t.po…

yum仓库和NFS网络共享服务

一、yum 1.1yum的定义 yum是一个基于RPM包&#xff0c;构建的软件更新机制&#xff0c;能够自动解决软件包之间的依赖关系。解决了日常工作中的大量查找安装依赖包的时间 为什么会有依赖关系的发生 因为linux本身就是以系统简洁为自身优势&#xff0c;所以在安装操作系统的时…

Docker与Harbor:构建企业级私有Docker镜像仓库

目录 引言 一、本地私有仓库 &#xff08;一&#xff09;基本概述 &#xff08;二&#xff09;搭建本地私有仓库 1.下载registry镜像 2.启动容器 3.上传本地镜像 4.客户端下载镜像 二、Harbor简介 &#xff08;一&#xff09;什么是 Harbor &#xff08;二&#xff…

苹果15能用哪些充电宝?充电宝什么牌子好?好用充电宝排名

随着移动设备的普及和功能的不断强大&#xff0c;我们对于充电宝的需求也越来越高。尤其是对于苹果15用户来说&#xff0c;选择一款兼容性好、性能稳定的充电宝显得尤为重要。在市面上众多充电宝品牌中&#xff0c;如何选择适合苹果15的充电宝&#xff1f;究竟哪个牌子的充电宝…

在线扭蛋机小程序:商家稳占市场的新突破口

近几年&#xff0c;扭蛋机进入了爆发期&#xff0c;动漫、游戏的发展更是推动了市场的发展&#xff0c;我国扭蛋机正在蓬勃发展中。 不过&#xff0c;在市场规模扩大下&#xff0c;扭蛋机行业的竞争力也在同时加大&#xff0c;企业商家需要在市场竞争中寻求发展新思路&#xf…

C#进阶-OleDb操作Excel和数据库

在C#编程中&#xff0c;使用OleDb可以方便地实现对Excel文件和数据库的操作。本文探讨了在C#中使用OleDb技术操作Excel和数据库的策略。文章详述了OleDb的定义、配置环境的步骤&#xff0c;并通过实际代码示例演示了如何高效读写Excel文件和交互数据库。文中还评估了OleDb技术的…

KaiwuDB 参编的《分析型数据库技术要求》标准正式发布

近期&#xff0c;中国电子工业标准化技术协会正式发布团体标准《分析型数据库技术要求》&#xff08;项目号&#xff1a;T-CESA 2023-006&#xff09;。该标准由中国电子技术标准化研究院、KaiwuDB&#xff08;上海沄熹科技有限公司&#xff09; 等国内 16 家企业联合起草&…

AI图书推荐:给自媒体创作者的ChatGPT使用指南

你是否厌倦了花费数小时盯着空白屏幕&#xff0c;努力为你的内容想出新鲜点子&#xff1f;想要将你的写作提升到下一个水平&#xff1f;有了ChatGPT&#xff0c;你可以告别写作障碍、无休止的修订和浪费的时间。 在这本全面的指南中&#xff0c;你将学到关于ChatGPT你需要知道…

Hive两代命令行客户端(Hive、Beeline)

Hive命令行客户端 Hive有两个主要的客户端工具&#xff0c;分别是旧版的Hive CLI&#xff08;Command Line Interface&#xff09;和新版的Beeline。 1. Hive CLI&#xff1a; Hive CLI 是 Hive 最早期的命令行客户端工具&#xff0c;它使用 JDBC 连接到 Hive 服务器&#xff…

轻松管理文件夹批量重命名:学会用关键词批量替换文件夹名称技巧

随着计算机中存储的文件和文件夹数量不断增加&#xff0c;如何有效地管理和组织它们变得尤为重要。批量重命名文件夹是提升文件管理效率的关键步骤之一。而利用云炫文件管理器中关键词批量替换文件夹名称的技巧&#xff0c;则可以帮助我们更快速地完成这一任务。 关键词批量替…

关于JavaScript的loadsh中_get()方法

在Vue或React中使用lodash&#xff0c;首先需要通过npm或yarn等包管理工具安装lodash&#xff0c;然后在需要的地方通过import语句引入lodash库。在Vue中&#xff0c;你可以使用lodash提供的各种函数来简化你的代码&#xff0c;提高开发效率。在React中&#xff0c;lodash同样可…

国内首发 | CSA大中华区启动《AI安全产业图谱(2024)》调研

在人工智能&#xff08;AI&#xff09;技术的快速发展浪潮中&#xff0c;AI安全已成为全球关注的焦点。为应对AI安全带来的挑战&#xff0c;确保AI技术的健康发展&#xff0c;全球范围内的研究机构、企业和技术社区都在积极探索解决方案。 在这一背景下&#xff0c;CSA大中华区…

什么是短信群发上行和下行

短信群发是一种广泛应用于商业和个人通信的技术&#xff0c;通过一次多条的方式&#xff0c;可以快速高效地传递信息。在实际的群发过程中&#xff0c;会涉及到上行和下行的概念。本文将详细介绍什么是短信群发上行和下行&#xff0c;并解释它们的应用。 什么是短信群发上行 群…

面试中算法(使用栈实现队列)

使用栈来模拟一个队列&#xff0c;要求实现队列的两个基本操作:入队、出队。 栈的特点&#xff1a;先入后出&#xff0c;出入元素都是在同一端&#xff08;栈顶&#xff09;。 队列的特点&#xff1a;先入先出&#xff0c;出入元素是在两端&#xff08;队头和队尾)。 分析&…

蓝桥杯 算法提高 ADV-1170 阶乘测试 python AC

找规律题&#xff0c;遍历i中有几个m就加几&#xff0c;和m的多少次数有关 第一版&#x1f447; try:while True:n, m map(int, input().split())ll [i for i in range(1, n 1) if i % m 0]ans len(ll)M mwhile ll:lll []M * mfor i in ll:if i % M 0:lll.append(i)a…

OKHTTP 3.12.0 以后版本 headers 中不可携带中文

今天遇到的报错&#xff1a; java.lang.llegalArgumentException: Unexpected char 0x957f at 0 in x-brand value: 电视堆栈 okhttp3.Headers.checkValue(Headers.java:272) okhttp3.Headers$Builder.add(Headers.java:312) okhttp3.Request$Builder.addHeader(Request.iava:…