术语表
下列术语贯穿全书。每条给出工作含义,并链接到完整定义该术语的章。
- Action — 用
etaf-action-define定义、用etaf-dispatch调用的具名命令;第一个参数是 Runtime。Action、Behavior 与错误边界 - Behavior — 可复用的非视觉 Host 属性集合,外加一个可选的、返回清理函数的安装函数。Action、Behavior 与错误边界
- Component — 带 props 的具名可复用 View 单元,用
etaf-define-component定义;每一处使用都是一个实例。Component - Context — 祖先用
etaf-provide提供、后代用etaf-inject读取的值。Context - Data Controller — 驱动 Data Source、持有条目与状态并响应式发布它们的对象。Data Controller
- Data Source — 加载、分页与变更应用数据的记录契约。Data Source
- Ebox — 保留一棵盒子树、对它布局并把结果增量写进 buffer 的引擎包。渲染模型
- Ebox 节点 — 布局树的保留单元;在已挂载 Runtime 里每个 Host 拥有一个。节点构造
- ecss — ETAF 样式背后的层叠引擎,也可作为通用库单独使用。选择器
- ekp — 支持 CJK 的 Knuth–Plass 段落断行,也可单独使用。断行原理
- ETAF — 本手册记录的应用程序框架:View、Host、Component、响应式状态、Context、Runtime、事件、Behavior、Action、Resource 与 Data。生态与分层
- Event — 派发到 Host 事件属性(如
:on-press、:on-drag)的交互。事件 - Host — ETAF 直接经 Ebox 渲染的节点种类:
text、box、fragment、row、column、flex、grid与image。Host - Host 引用 — 已挂载 Runtime 用来寻址某个已提交 Host 的稳定句柄。Host
- ref — 保存状态并通知读取者的响应式单元。响应式系统
- Resource — 带状态、重载与释放的异步加载值。Resource
- Runtime —
etaf-mount为 buffer 创建的对象:渲染 View、拥有实例树并提交变化。Runtime - Scope(ECSS) — 把 stylesheet 绑定到 subject 树的挂接点。stylesheet、scope 与作者所有权
- Scope(响应式) — 统一释放其副作用的拥有者。响应式系统
- Theme — 把 token 映射到样式值、从而给子树换装的对象。组件样式与主题
- token — 具名的 Theme 值,如
:ui-fg。组件样式与主题 - View — 对用户界面的不可变描述:由 Host 节点与 Component 节点组成的树。View
- 保留更新 — 按引用把内容或几何写进已提交 Host 的发布路径。增量更新与发布
- 动画 — 由 Runtime 时钟驱动的 View 或 Host 值的时间插值。动画
- 区域 — 带入口的声明式导航区域,供区域导航与选择器使用。区域导航
- 副作用 — 响应其读取状态的响应式计算;由 Scope 拥有。响应式系统
- 和解 — 让乐观写入与服务端结果收敛的 Data Controller 策略。和解
- 批 — 把响应式写入分组的表单,结束后 Runtime 只提交一次。响应式系统
- 排空 — 运行排队的副作用直到响应式状态稳定、每个有变化的 Runtime 提交一次的循环。响应式系统
- 提交 — 排空期间把 Runtime 变化后的输出发布进 buffer 的一次写入。响应式系统
- 挂载 — Ebox 树或 ETAF Runtime 与 buffer 之间的绑定,在更新中保持一致。挂载与生命周期
- 盒子 — 建立块格式化上下文、按常规流摆放子节点的 Host。盒与常规流
- 实例 — 已挂载 View 中 Component 的一次使用,有自己的 props、状态与 Scope。Component
- 层 — 在特异性之前给声明排序的具名层叠桶。stylesheet、scope 与作者所有权
- 层叠 — 把来自不同来源、层与选择器的声明按顺序归结为一个计算值。样式系统总论
- 定位 — 相对包含块把 Host 摆在流外。定位、图层与浮层
- 常规流 — 定位之前盒子默认的块级与行内排布。盒与常规流
- 量度 — 段落布局可用的宽或高,以像素或字符计。断行原理
- 禁则 — 禁止某些 CJK 字符出现在行首或行尾的规则。CJK 排版
- 突出 — 让收尾的 CJK 标点悬到边距里,而不是逼出一行松散的行。CJK 排版
- 来源 — 声明的出处:内联样式、作者样式表、用户代理样式表或规则文件。stylesheet、scope 与作者所有权
- 计算值 — 由其他响应式值派生的响应式值,依赖不变时缓存。响应式系统
- 计算样式 — 层叠与继承之后每个样式属性的最终值。样式系统总论
- 输入会话 — 把一个已布局文本节点变成可编辑值的编辑状态。文本输入
- 预编辑 — 输入法正在组合但尚未提交的文本;它从不进入会话的值。文本输入
- props — Component 声明的输入,带默认值与可选校验。Component
- 视口 — 渲染文档中窗口大小的可见区域。视口
- 选择器 — 规则借 Host 元数据与类名匹配 Host 的模式。选择器
- 特异性 — 选择器的权重,用来给同一来源与层的声明排序。选择器
- 语义属性 —
:role、:aria-label这类描述含义而非绘制或几何的 Host 属性。Host - 样式表 — 由 ECSS 来源创建并挂到 Scope 上的一组规则。stylesheet、scope 与作者所有权
- 样式属性 — Ebox 用于布局与绘制的属性,如
:padding、:font-weight。样式属性参考 - 槽位 — Component 的具名子节点位置。Component
- 焦点 — 接收框架键、激活与方向键的 Host。焦点
- 性能记录器 —
etaf-performance-*接口背后的公共测量子系统。性能工程 - 错误边界 — 子树失败时渲染回退内容的 Component 子句。Action、Behavior 与错误边界
- 键作用域 — 其
:keys条目能应答当前按键的 Host 及其祖先。键盘