📄️ 声明式 UI
Ribir 使用基于 Rust 宏的声明式 DSL(领域特定语言)来定义用户界面。这使您能够描述 UI 应该是什么样子,而不是 如何 一步步构建它。
📄️ Widget 系统
Ribir 的 Widget 系统建立在三个核心 trait 之上:Render、Compose 和 ComposeChild。理解这些 trait 是创建自定义 Widget 和理解 Ribir 如何构建 UI 树的关键。
📄️ 内置属性和 FatObj
Ribir 提供了一个强大的内置属性系统,让您可以为任何 Widget 添加常用功能,如布局控制(margin、alignment)、视觉效果(background、border、opacity、transform)和交互事件(ontap、onhover)。这些功能并非由每个 Widget 单独实现,而是通过一个称为 FatObj 的通用包装器统一提供。
📄️ 状态管理
Ribir 采用数据驱动的方式进行状态管理。您无需手动更新 Widget,只需修改数据(状态),Ribir 就会自动更新依赖于该数据的 UI 部分。