当前位置: 首页 > news >正文

上海网站建设 劲晟网站seo运营培训机构

上海网站建设 劲晟,网站seo运营培训机构,网站建设服务优势,上海找工作网站JSX是什么,React为什么使用JSX,babel怎么转译JSX的 在前端的框架中有两种“描述UI”的方案,一种是JSX语法,一种是模板语言。 其中React就是选择的JSX,Vue就是选择的模板语言。 JSX其实就是一个语法糖,在…

JSX是什么,React为什么使用JSX,babel怎么转译JSX的

在前端的框架中有两种“描述UI”的方案,一种是JSX语法,一种是模板语言。

其中React就是选择的JSX,Vue就是选择的模板语言。

JSX其实就是一个语法糖,在编写React代码的时候你可以不使用JSX来进行编写。在React中,你写的JSX代码最终都会被babel编译。

// JSX语法
const element = <h1>Hello,World!</h1>
// babel编译后
var element = React.createElement("h1",null,"Hello,world!");//React17版本之前
// React17版本之后
var _jsxRuntime = require("react/jsx-runtime");
var element = _jsxRuntime.jsx("h1",{children:"Hello World!"});

JSX由babel转换成React.createElement或_jsxRuntime.jsx的形式,函数执行后返回虚拟DOM,所以说你可以不使用JSX,可以直接写React.createElement或_jsxRuntime.jsx的形式。
所以我们写的代码最终都会被构建成虚拟DOM树。JSX就是一种类XML语法的语法糖,让开发者来构建这个虚拟DOM树更加的方便,使代码更加的简洁。

那么babel是怎么样将JSX语法转换成React.createElement或_jsxRuntime.jsx的形式的呢?

babel编译JSX的流程分为三个部分:

  1. parse:通过parse将JSX代码转换成AST。
  2. transform:在transform阶段使用@babel/plugin-transform-react-jsx插件,它的核心就是visitor函数,通过这个函数来遍历AST,根据不同的节点类型来做不同的处理,生成了JSX对应的createElement对应的AST。
  3. generate:最后由generate将AST转换为JS。
http://www.15wanjia.com/news/3038.html

相关文章:

  • 做ps赚钱网站有哪些百度竞价点击价格
  • 怎么做b2c网站百度seo收录软件
  • 免费成品网站那里好百度关键词相关性优化软件
  • wordpress使用css上海seo搜索优化
  • 贵州省住房和城乡建设厅证件查询seo怎么优化关键词排名
  • 聚美优品一个专注于做特价的网站国外网站推广公司
  • 建站系统兰州网络推广优化怎样
  • 福州婚庆网站建设哪个公司比较专业石家庄线上推广平台
  • 做正版电子书下载网站百度收录排名查询
  • 深圳做网站 信科网络百度指数代表什么
  • 自己网站如何做关键词排名怎样才能在百度上发布信息
  • 专业网站制作公司排行奉化网站关键词优化费用
  • 那里做网站比较好什么软件可以发帖子做推广
  • 做兼职一般去哪个网站好免费推广公司
  • 网站开发属于什么会计科目大数据营销的概念
  • 小企业来说 电子商务网站服务器的建设方案跨境电商
  • 做张网站banner多少钱广州疫情最新新增
  • 企业网站怎么维护app拉新任务平台
  • 学做网站 书成都seo技术
  • 有哪些品牌做打底衫的网站网络推广费用大概价格
  • 海南短视频搜索seo哪家实惠澳门seo推广
  • 长沙新冠疫情最新消息今天网站排名优化软件
  • web网站开发课程设计总结搜索引擎的网址有哪些
  • 太原网络推广哪家好成都网站关键词推广优化
  • 网站建设优化规划书搜狗收录
  • 建立av网站网络营销运营
  • 企业网站的建立如何带来询盘seo的收费标准
  • 双语网站建设网站合肥网络关键词排名
  • 常见网站建设seo优化网站快速排名
  • wordpress文章模板代码seo是什么意思怎么解决