react中jsx的语法规则

1.react核心库react.development.js

2.react_dom库,用于支持react操作dom(react-dom.development.js)

3.引入bable,解析jsx语法的库,用于将jsx转换为js(babel.min.js)

上述三个库是写基础react的基本库

下面我将用一个例子来总结jsx语法规则

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>hello_react</title><style>.title {color: blue;background-color: aqua;}</style>
</head><body><!-- 引入react 核心库 --><script type="text/javascript" src="../js/react.development.js"></script><!-- 引入react-dom库 ,用于支持react操作Dom --><script type="text/javascript" src="../js/react-dom.development.js"></script><!-- 引入babel 解析jsx语法的库,用于将jsx转换为js --><script type="text/javascript" src="../js/babel.min.js"></script></script><!-- 准备一个容器用于渲染接收 --><div id="test"></div><script type="text/babel">const myId = 'aiXueXi'const myData = 'HeLLo,ReaCt'// 创建虚拟DOM// toLocaleLowerCase()转换成小写字母// toUpperCase()转换成大写字母const VDOM = (<div><h2 className='title' id={myId.toLocaleLowerCase()}><span>{myData.toLocaleLowerCase()}</span></h2><h3 className='title' id={myId.toUpperCase()}><span >{myData.toUpperCase()}</span></h3><input type="text" /><good>测试</good></div>)// 渲染虚拟DOM到页面ReactDOM.render(VDOM, document.getElementById('test'))</script>
</body></html>

上面一个例子我简单利用react的jsx创建虚拟dom来进行渲染页面

从而总结jsx语法规则如下

  1. 定义虚拟dom的时候不要写引号
  2. 标签中混入js表达式的时候要用花括号
  3. 样式的类名不能用class,要用className
  4. 内联样式,style={{key:value}}的形式去写
  5. 只有一个根标签
  6. 标签首字母分大小写两种情况
  7. 如果首字母小写字母开头,则将改标签转换为html中的同名元素,如果html中没有该标签对应的同名元素就会报错
  8. 如果首字母是大写字母开头,react就会去渲染对应的组件,如果没有该组件就会报错

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

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

相关文章

光照老化试验箱在化工产品暴晒测试中的应用

概述 光照老化试验箱是一种模拟自然光照条件下材料老化情况的实验设备&#xff0c;广泛应用于化工、建材、电子、汽车等行业中对材料的耐候性、耐光性能等进行测试。通过模拟日光中的紫外线和温度等环境因素&#xff0c;加速材料老化过程&#xff0c;以此评估材料在长期使用中…

2024阿里云大模型自定义插件(如何调用自定义接口)

1&#xff0c;自定义插件入口 2&#xff0c;插件定义&#xff1a;描述插件的参数 2.1&#xff0c;注意事项&#xff1a; 2.1.1&#xff0c;只支持json格式的参数&#xff1b;只支持application/JSON&#xff1b;如下图&#xff1a; 2.1.2&#xff0c;需要把接口描述进行修改&a…

03:Spring MVC

文章目录 一&#xff1a;Spring MVC简介1&#xff1a;说说自己对于Spring MVC的了解&#xff1f;1.1&#xff1a;流程说明&#xff1a; 一&#xff1a;Spring MVC简介 Spring MVC就是一个MVC框架&#xff0c;Spring MVC annotation式的开发比Struts2方便&#xff0c;可以直接代…

LeetCode 算法:二叉搜索树中第K小的元素 c++

原题链接&#x1f517;&#xff1a;二叉搜索树中第K小的元素 难度&#xff1a;中等⭐️⭐️ 题目 给定一个二叉搜索树的根节点 root &#xff0c;和一个整数 k &#xff0c;请你设计一个算法查找其中第 k 小的元素&#xff08;从1开始计数&#xff09;。 示例 1&#xff1a;…

网络爬虫之什么是代码混淆?初步理解代码混淆

爬虫逆向之什么是代码混淆&#xff1f;初步理解代码混淆 在网络爬虫和逆向工程的过程中&#xff0c;代码混淆是一项常见的技术&#xff0c;旨在保护代码不被轻易理解和逆向。对于爬虫工程师来说&#xff0c;理解并破解代码混淆是一个重要的技能。本文将详细介绍代码混淆的基本概…

GUI开发

Question One Java 实现动作监听&#xff0c;网格布局添加四个按钮&#xff0c;实现四个不同的文本显示 import java.awt.*; import java.awt.event.*; import javax.swing.*;class myGUI extends JFrame implements ActionListener{private Button b1, b2, b3, b4;private Tex…

0627,0628,0629,排序,文件

01&#xff1a;请实现选择排序&#xff0c;并分析它的时间复杂度&#xff0c;空间复杂度和稳定性 void selection_sort(int arr[], int n); 解答&#xff1a; 稳定性&#xff1a;稳定&#xff0c; 不稳定的&#xff0c;会发生长距离的交换 4 9 9 4 1 &#xf…

ubuntu,linux下屏蔽坏块方法-240625-240702封存

在windows下的屏蔽坏道的方法 机械硬盘坏道的文件系统级别的屏蔽方法_硬盘如何屏蔽坏扇区-CSDN博客 https://blog.csdn.net/cyuyan112233/article/details/139408503?spm1001.2014.3001.5502 【免费】磁盘坏道屏蔽工具磁盘坏道屏蔽工具_机械硬盘屏蔽坏扇区资源-CSDN文库 https…

第一周题目总结

1.车尔尼有一个数组 nums &#xff0c;它只包含 正 整数&#xff0c;所有正整数的数位长度都 相同 。 两个整数的 数位不同 指的是两个整数 相同 位置上不同数字的数目。 请车尔尼返回 nums 中 所有 整数对里&#xff0c;数位不同之和。 示例 1&#xff1a; 输入&#xff1a…

【嵌入式DIY实例-ESP8266篇】-LCD ST7735显示网络时间

LCD ST7735显示网络时间 文章目录 LCD ST7735显示网络时间1、硬件准备2、代码实现本文将介绍如何使用 ESP8266 NodeMCU Wi-Fi 板实现互联网时钟,其中时间和日期显示在 ST7735 TFT 显示屏上。 ST7735 TFT是一款分辨率为128160像素的彩色显示屏,采用SPI协议与主控设备通信。 1…

Python中的变量和数据类型:Python中有哪些基本数据类型以及变量是如何声明的

在Python中&#xff0c;变量是用来存储数据的容器&#xff0c;而数据类型则定义了这些数据的种类。Python是一种动态类型语言&#xff0c;这意味着你不需要在声明变量时指定其类型&#xff1b;Python解释器会在运行时自动确定变量的类型。 Python中的基本数据类型 Python中有…

SQL语句(DML)

DML英文全称是Data Manipulation Language&#xff08;数据操作语言&#xff09;&#xff0c;用来对数据库中表的数据记录进行增删改等操作 DML-添加数据 insert into employee(id, workno, name, gender, age, idcard) values (1,1,Itcast,男,10,123456789012345678);select *…

AI 与数据的智能融合丨大模型时代下的存储系统

WOT 全球技术创新大会2024北京站于 6 月 22 日圆满落幕。本届大会以“智启新纪&#xff0c;慧创万物”为主题&#xff0c;邀请到 60 位不同行业的专家&#xff0c;聚焦 AIGC、领导力、研发效能、架构演进、大数据等热门技术话题进行分享。 近年来&#xff0c;数据和人工智能已…

记录搭建一台可域名访问的HTTPS服务器

一、背景 近期公司业务涉及到微信小程序&#xff0c;即将开发完成需要按照微信小程序平台的要求提供带证书的域名请求服务器。 资源背景介绍如下&#xff1a; 1、域名 公司已有一个二级域名&#xff0c;再次申请新的二级域名并且实现ICP备案不仅需要花重金重新购买&#xff0c;…

Docker实现Redis主从,以及哨兵机制

Docker实现Redis主从,以及哨兵机制 目录 Docker实现Redis主从,以及哨兵机制准备Redis镜像创建Redis主节点配置文件启动Redis从节点确认主从连接哨兵主要功能配置哨兵文件创建Redis哨兵的Docker容器 要通过Docker实现Redis的主从&#xff08;master-slave&#xff09;复制&#…

汽车EDI: BMW EDI项目案例

宝马集团是全世界成功的汽车和摩托车制造商之一&#xff0c;旗下拥有BMW、MINI和Rolls-Royce三大品牌&#xff1b;同时提供汽车金融和高档出行服务。作为一家全球性公司&#xff0c;宝马集团在14个国家拥有31家生产和组装厂&#xff0c;销售网络遍及140多个国家和地区。 本文主…

什么是 Socks5 代理?了解和使用 SOCKS5 代理的终极指南

SOCKS5是什么以及它如何工作&#xff1f; 在网络和互联网协议领域&#xff0c;有多种工具和技术在确保安全高效的通信方面发挥着至关重要的作用。 SOCKS5 就是这样一个工具&#xff0c;它代表套接字安全版本 5。 在这篇博文中&#xff0c;我们将深入探讨 SOCKS5 的细节&…

CoAtNet(NeurIPS 2023, Google)论文解读

paper&#xff1a;CoAtNet: Marrying Convolution and Attention for All Data Sizes third-party implementation&#xff1a;https://github.com/huggingface/pytorch-image-models/blob/main/timm/models/maxxvit.py 背景 自AlexNet以来&#xff0c;ConvNets一直是计算机…

【基于R语言群体遗传学】-5-扩展到两个以上等位基因及多基因位点

我们现在继续对于群体遗传学进行统计建模&#xff0c;书接上回&#xff0c;我们讨论了孤雌生殖的物种违反哈代温伯格遗传比例的例子&#xff0c;那我们现在来看多于两个等位基因的情况的计算。 如果没有看过之前文章的同学&#xff0c;可以先去看一下之前的文章&#xff1a; …

开源租房项目

项目名称项目地址描述体验地址后端代码前端代码小程序端代码gitHubstart租房或房屋交易项目https://github.com/saysky/manland?tabreadme-ov-filePC端 管理端http://manland.liuyanzhao.com/有有无房适–房屋租赁管理平台https://github.com/LiuXIn011/rightHouse开源房屋管理…