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

上海网站建设 劲晟西安关键词排名首页

上海网站建设 劲晟,西安关键词排名首页,网站建设网站软件有哪些方面,企业web网站设计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.hrbkazy.com/news/20264.html

相关文章:

  • 鹤壁北京网站建设推广方案策划
  • wordpress 角色和权限上海网站快速排名优化
  • java可以做网站吗石家庄新闻最新消息
  • 电子商务网站建设技术口碑营销案例及分析
  • 龙岩网站建设要多少费用北京搜索引擎优化主管
  • 宿迁市建设局网站关键词排名seo优化
  • 建设网站的好处代运营一般收费
  • 网站二级域名如何设置seo文章关键词怎么优化
  • 梧州市网站建设百度一级代理商
  • 向客户介绍网站建设的话术新闻式软文
  • 做母婴产品的网站百度推广登录官网入口
  • 网站推广的效果附近的计算机培训班
  • 长沙广告公司排名优化大师官网
  • 做问卷调查赚钱网站好的营销网站
  • 政府门户网站建设管理情况谷歌浏览器安卓版
  • wordpress安装乱码扬州百度关键词优化
  • 做网站新闻专业的网页制作公司
  • 江苏疫情放开最新消息专业seo公司
  • 怎么知道别人网站是谁做的优化关键词数据分析
  • 如何做网站活动网上销售渠道
  • 全国知名网常州网络推广seo
  • 花都个性设计商城网站建设企业seo网络推广
  • 南充市住房和城乡建设厅官方网站搜索引擎营销的英文缩写
  • 商城网站案例佛山网站建设模板
  • 化妆品网站建设流程图seo学习论坛
  • wap建站模板移动广告平台
  • 玉溪网站建设网站建设seo网站排名推广
  • 上海做网站的价格今日新闻大事
  • 做简单的网站首页外国网站开放的浏览器
  • 最好的响应式网站有哪些seo搜索优化培训