2 个仓库
Defers multiple state changes into a single render cycle to optimize browser performance.
Distinct from State Change Batching: The candidates refer to blockchain state, file systems, or GPU draw calls; this is specifically about web UI render cycle batching.
Explore 2 awesome GitHub repositories matching user interface & experience · Render Batching. Refine with filters or upvote what's useful.
Reagent 是一个使用 ClojureScript 和 React.js 构建 Web 用户界面的框架。它实现了声明式 UI 设计的函数式编程方法,其中 HTML 结构和组件层次结构使用基于向量的 Hiccup 语法而不是 JSX 定义。 该项目通过基于原子(Atoms)的响应式状态管理系统脱颖而出。它跟踪哪些组件解引用特定的状态原子以触发自动重新渲染,并提供状态游标(Cursors)以将更新隔离到较大状态原子的特定路径。它还包括用于包装原生 JavaScript 组件和第三方库的工具,以确保它们与函数式渲染周期保持兼容。 该框架涵盖了广泛的功能,包括虚拟 DOM 协调、副作用和清理的生命周期管理,以及通过更新批处理和计算记忆化进行的渲染性能优化。它还提供用于静态 HTML 字符串的服务器端渲染、通过上下文(Context)的全局状态共享,以及用于 HTML 内容清理的安全原语。
Implements update batching to ensure multiple state changes trigger only a single render cycle, reducing browser repaint overhead.
Lit-element is a custom element framework and reactive UI library that provides a base class for creating standard HTML elements. It is designed to build web components that automatically update their visual state when internal properties or data change. The project enables the development of encapsulated components using the shadow root to isolate styles and structure. It utilizes JavaScript template literals to render declarative templates without requiring a compilation step. The library covers state management through reactive property tracking and the synchronization of JavaScript class
Groups multiple state changes into a single asynchronous render cycle to minimize redundant DOM manipulations.