关于React库的纯JS DOM的单向可视化?

【技术讨论】React库据说是用JS模拟了DOM,其可视化是单向流向的,所以性能比DOM要好(DOM的getComputedStyle或者会触发reflow的style获取?),但这不是意味着这个JS DOM需要实现所有的影响layout的CSS属性设置操作?

如果真的实现了的话,岂不是JS完全重新实现了WebCore layout引擎了

其实DOM的本质也是单向的,并不存在一个单独的UI反馈设备,当设置了元素的CSS属性并经过layout排版后,元素的大小位置都是根据一个模型计算出来的,只不过某些中间可视化相关的属性没有暴露出来而已

据说CSSOM就是为了解决这个问题,但是目前还没有成熟

计算机可视化本质上还是单向的,所谓的双向只是模拟出来的

严格的双向需要离散计算过程都是可逆的,但这一点实质上是做不到的,浮点数精度问题

不过假设某种情况下可以“双向”的话,则意味着不需要什么可视化屏幕设备了,可以让它直接与人的大脑连接,与感知细胞进行通信交流

时间: 2024-10-15 05:48:22

关于React库的纯JS DOM的单向可视化?的相关文章

Highcharts纯js图表库,以后可以跟客户说,你跟阿里云ECS用的图表库是同款

Highcharts是一款纯javascript编写的图表库,能够很简便的在Web网站或Web应用中添加交互性的图表,Highcharts目前支持直线图.曲线图.面积图.柱状图.饼图.散点图等多达18种不同类型的图表,可以满足常用的Web图表需求 ! 近来维护我的阿里云服务器,进入后台偶然发现阿里云管理后台数据图表用的也是Highcharts,刚好正需要WEB端展示数据的东西,研究哈… Highcharts官网:http://www.highcharts.com Highcharts中文站:ht

纯JS实现的3D标签云,不依赖任何第三方库,支持移动页面

<span style="font-family: Arial, Helvetica, sans-serif;"><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"></span> <html xmlns="

react特点和创建虚拟DOM

react:用于构建用户界面的JavaScript库 特点: 1.声明式(只需要更新数据,不需要操作DOM,页面就会变化) 2.组件化(页面简化,方便维护) 3.一次学习,随处编写(ReactNative,可以运用在手机上,包括安卓和ios,既可以写浏览器端也可以写服务器端) 4.高效(虚拟dom:不总是直接操作DOM 和 dom diff:最小化页面重绘) 5.单项数据流 注意:react高效的原因:  相关js库: react.js:React的核心库 react-dom.js:提供操作DO

纯js实现html转pdf

项目开发中遇到了一个变态需求,需要把一整个页面导出为pdf格式,而且要保留页面上的所有的表格.svg图片和样式.简而言之,就是希望像截图一样,把整个页面截下来,然后保存成pdf.咋不上天呢--查了一下,能够实现html转pdf的方法还是挺多的,大概有以下几种:1.大部分浏览器就有这个功能.然而我们客户要的可不是这个,人家要的是能够在系统中主动触发的导出为pdf功能,所以这种方案pass.2.利用第三方工具.我找到了一种利用wkhtmltopdf这种工具来导出的方案,自己在我们的项目中试了一下,效

纯JS实现省市区三级联动

<!DOCTYPE html><html><head>    <title>纯JS省市区联动</title>    <script type="text/javascript" src="jsAddress.js"></script></head><body><div> 省:<select id="cmbProvince"

轻量级 web 文件上传组件,纯js,html5、html4智能适配,支持上传进度显示(IE10+、标准浏览器)

老早就注册了博客园帐号,昨天才发现,连博客都没开,Github也是一样,深觉惭愧,赶紧潜个水压压惊`(*∩_∩*)′ 言归正传.大概许多人都会用到文件上传的功能,上传的库貌似也不少,比如(jQuery File Uploader.FineUploader.Uploadify.Baidu Web Uploader 等等),功能都很强大,代码量一般也较大.当时心想,就这么个小功能,杀鸡焉用牛刀,用库的话还得熟悉它的用法,有的需要引入额外的库,纯Flash的不考虑,还是动手造个轮子得了,至少造过之后能

纯js客服插件集qq、旺旺、skype、百度hi、msn

原文 纯js客服插件集qq.旺旺.skype.百度hi.msn 客服插件,集qq.旺旺.skype.百度hi.msn 等 即时通讯工具,并可自己添加支持的通讯工具,极简主义,用法自己琢磨.我的博客 http://www.qiling.org <script> //在线客服插件 powered by casejs 极简主义 http://www.mlrzw.cn function CaseService(caseServiceConfig) { this.config = caseService

纯js生成QRCode

纯js,不依赖jquery,非常好用,废话不多说,直接上代码! 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="utf-8" /> 5 <meta name="viewport" content="width=device-width, initial-scale=1,maximum-scale=1, user-scalable=no"

菜单栏展开和收起效果(纯js)

2014年6月25日 15:36:29 需要关注的是: 1.用cookie保存用户当前点击的菜单项,不打扰后端代码 2.通过数学计算得到要显示和隐藏的div 3.点击事件是动态绑定到a标签上的,因此当dom加载完后,再执行js,也就是写在onload里 HTML如下: 1 <h3 class="titleH3" id="101">aaaa</h3> 2 <div class="subNav" id="1&q