@fulate/components
v1.0.6
Published
`@fulate/components` 提供基于 Vue 和 Material Design 3 的 Canvas UI 组件:`FButton`、`FInput`、 `FSelect`、`FRadio`、`FCheckbox`、`FSwitch`、`FTooltip`、`FPopover`、`FDialog` 与 `FMessage`。 导入包会加载 Yoga 的 `f-div`/`f-span` 注册,以便组件模板使用 Flex 容器。
Readme
@fulate/components
@fulate/components 提供基于 Vue 和 Material Design 3 的 Canvas UI 组件:FButton、FInput、
FSelect、FRadio、FCheckbox、FSwitch、FTooltip、FPopover、FDialog 与 FMessage。
导入包会加载 Yoga 的 f-div/f-span 注册,以便组件模板使用 Flex 容器。
基本用法
import { FButton, FInput, FPopover } from "@fulate/components";
function Panel() {
return (
<f-div>
<FInput modelValue={name.value} />
<FButton onClick={save}>Save</FButton>
<FPopover>Details</FPopover>
</f-div>
);
}组件遵循 Vue 的 props/events 与 composable 语义;Canvas 元素属性通过 renderer 的普通
setOptions() 路径更新。组件内部的 overlay 定位复用所属 Root 的 frame-final completion,不创建
第二个 RAF 或 scheduler。FDialog、FMessage 通过所属 Root 的 viewport/resize 事实更新,
FTooltip/FPopover 通过 useOutsideClick() 与 useOverlayPosition() 管理触发和定位。
Overlay 与消息
useOverlay()、useOverlayPosition()、FTooltip、FPopover 和 FDialog 使用当前 Root 提供的
overlay Layer。useOutsideClick() 负责外部指针边界;useMessage() 返回消息 API,消息组件的
timer,以及组件创建的 viewport 和 document listener,都会在卸载时清理。
具体 props、事件和尺寸类型以包源码导出的 TypeScript 类型为准;本 README 只说明包边界,不复制 每个组件的完整 API。
