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

电子商务类网站有哪些南昌做网站的公司多不多

电子商务类网站有哪些,南昌做网站的公司多不多,android购物商城源码,网站备案 登录名JSX底层渲染机制 一,.步骤 1.把我们写的jsx语法编译为虚拟DOM【virtualDOM】 虚拟DOM对象#xff1a;框架自己内部构建的一套对象体系#xff08;对象的相关成员都是React内部绑定的#xff09;#xff0c;基于这些属性描述出我们所构建视图中的DOM接的相关特征 1基于ba…JSX底层渲染机制 一,.步骤 1.把我们写的jsx语法编译为虚拟DOM【virtualDOM】 虚拟DOM对象框架自己内部构建的一套对象体系对象的相关成员都是React内部绑定的基于这些属性描述出我们所构建视图中的DOM接的相关特征 1基于babel-preset-react-app 把jsx编译为React.createElement(…)的格式。 只要是元素节点必然会基于createElement进行处理 React.createElement(ele,props,…children) ele 元素标签名【或组件】 props 元素的属性集合对象如果没有任何的属性则此值为null children 第三个及其以后得参数都是当前元素的子节点 如下图jsx root.render{h2 classNametitle style{styleObj}XXXX/h2div classNameboxspanx/spanspany/span/div/ }编译为 再把CreateElement的方法执行创建出VirtualDom对象【也有称为JSX元素、JSX对象、ReactChild对象…】 //虚拟DOM对象 virtualDOM{$$typeOf:Symbol(react.element),ref:null,key:null,type:标签名【或组件】,//存储了元素相关属性子节点信息props:{元素的相关节点children:子节点信息【没有子节点就没有则个属性、属性可能是一个值也可能是一个数组】} }/*createElement:创建虚拟DOM对象*/ export fucnction createElement(ele,props,...children){let virtualDOM{$$typeOf:Symbol(react.element),key:null,key:null,ref:null,type:null. props:{}};let lenchildren,lengthvirtualDOM.typeele;if(props){virtualDOM.props{...props}}if(len1){virtualDOM.props.childrenchildren[0]}else if(len1){virtualDOM.props.childrenchildren}return virtualDOM }2.构建的virtualDOM渲染为真实的DOM元素 真实DOM浏览器页面中最后渲染出来让用户看见的DOM元素 基于ReactDOM中的render方法处理 v16 ReactDOM.render(.../domcument.getElementById(root) )v18 const root React.createRoot(dociment.getElementById(root)) root,render(.../ )补充第一次渲染页面是直接从虚拟DOM — 真实ODM但是后续视图更新的时候会经过一个DOM-DIFF的对比计算出补丁包PATCH两次视图差异部分把PATCH补丁包进行渲染 /*render把虚拟DOM变为真实DOM*/ export function render(virtualDOM,container){let {type,props}virtualDOM;if(typeof typestring){//存储的是标签名动态创建这样一个标签let eledomcument.createElement(type);//为标签设置相关属性节点each(props,(value,key){//classNmae的处理if(keyclassName){ele.classNamevaluereturn}//style的处理value存储的是样式对象if(keystyle){each(value,(val,attr){ele.style[attr]val})return}//子节点的处理value存储的children属性值if(keychildren){let children valueif(children.length1){children[children]}children.forEach(child{//子节点是文本节点直接插入if(typeof childstring){ele.appendChild(domcument.createTextNode(child))return; }//子节点又是一个虚拟ODM:递归处理render(child,ele)})return}ele.setAttribute(key,value);})container.appendChild(ele)} }
http://www.hkea.cn/news/14455201/

相关文章:

  • 有织梦后台系统怎么做网站新浪云部署wordpress
  • 延安网站建设推广wordpress code
  • dz 做企业网站网站建设万首先金手指14
  • 常用网站设置手机网站单页
  • 怎样进入国外网站访问wordpress数据库
  • 济南网站排名外包百度手机网站提交
  • wordpress去除 版权济南网站优化收费
  • 宝安区做网站网站怎么做点击广告
  • 深圳门户网站建设网站开发过程前端后端
  • 网站后台是怎么更新平面设计网上接单
  • 架设一个网站需要多少钱上海著名网站设计公司
  • 网站开发价格估算wordpress采集发布
  • 扬州高端网站建设h5广告
  • asp.net 如何设置网站首页谷歌广告联盟
  • 沙漠风网站建设怎么样台前网站建设费用
  • 郑州外贸建站优秀的门户网站
  • 高淳网站建设别人用我公司权限做网站
  • 广州 网站开发 骏域wordpress 开启评论
  • 怎么开通网站域名到期了网站会打不开吗
  • shopify网站建设那些网站做任务领q币
  • 西安建设工程交易中心网站wordpress二开前端
  • 网站关键词优化教程seo工程师是做什么的
  • 做网站怎么去找客户网站构建规划书
  • php网站后台开发教程杭州网站建设制作联系电话
  • 黄石市下陆区建设管理局网站wordpress 用iis建站
  • 丰县住房和城乡建设局网站西安网站设设
  • 烟台网站设计公司无锡网站制作哪家强
  • 检测WordPress网站的安全性淘宝美工做倒计时图片网站
  • 大连优化网站课程百度收录推广
  • 软件网站开发市场前景湘潭做网站公司