reactjs - React 渲染模型和原生工具包有什么区别
问题描述
我应该澄清一下,我对渲染模型特别感兴趣,据我了解,React 只会重新渲染已经改变的东西,像 GTK 和 QT 这样的原生工具包不会这样做吗?他们会做什么呢?
解决方案
原生工具包也只会重新渲染已经改变的东西,但它发生的方式有点不同。
本机工具包渲染包括在屏幕上逐字绘制像素。在 React 中,渲染包括操作 DOM,然后由浏览器将其渲染到页面中,然后该页面的像素由编写浏览器的本机工具包绘制到屏幕上。因此本机工具包具有更多的自由来优化每个级别的东西,而 React 只控制 DOM 级别。
在 GTK 中,粗略地说,当 UI 小部件知道某些内容已更改并需要重新渲染时,它能够“使”其像素区域“无效”。在下一次绘制更新期间,无效区域将根据新状态重新绘制。例如,该工具包可以将绘制更新之间发生的多个失效合并为一个,以优化事物。
推荐阅读
- python - AttributeError:'tuple'对象在django中没有带有redirect(reverse)的属性'get'
- javascript - 如何在 onPress 道具中调用多个函数?
- r - 如何计算一个数据框中的值并将结果传输到 R 中相应列下的第二个数据框?
- r - 如何在 usethis::use_data() R 的 for 循环中动态更改名称
- c# - 如何从第二个 API 调用返回相同的状态码
- javascript - Axios 中止所有先前的请求
- javascript - 具有名称的函数表达式中的匿名函数
- perl - 如何在 Mojo::Exception 检查块中重定向?
- json - 如何使用我的图像在本地的颤振解析 json 文件中的图像?
- python - 从没有 Pandas 推断标题的 csv 中读取特定列