@meshflow/form
v0.1.8
Published
Form orchestration adapter for @meshflow/core, providing high-level form logic and schema validation.
Maintainers
Readme
@meshflow/form
基于 @meshflow/core 的高性能、强类型、无头(Headless)表单逻辑驱动器。
🌟 核心优势
@meshflow/form 是专为复杂中后台设计的表单逻辑层。它不提供任何 UI 组件,而是通过拓扑任务编排,赋予表单处理 500+ 节点复杂联动的能力。
- 🏗️ 真正的无头架构:通过
UITrigger与 UI 框架(Vue/React/Solid)解耦,逻辑运行在纯 JS 引擎中。 - ⚡ 极致类型推导:基于 TypeScript 的路径感知,实现超大规模 Schema 的自动路径补全。
- 🧩 插件化扩展:支持通过
modules注入功能模块(如 Undo/Redo 历史记录)。 - 🌊 异步时序安全:内置水位线机制,原生解决高频操作下的异步回填竞态问题。
🚀 快速上手
安装
npm install @meshflow/form初始化引擎
import { useMeshForm } from "@meshflow/form";
const schema = {
type: 'group',
name: 'billing',
label: '计费与汇总',
children: [
{ type: 'number', name: 'totalPrice', label: '预估月度总价', value: 0, },
{ type: 'input', name: 'priceDetail', label: '计费项说明', value: '基础配置费用'}
]
};
const engine = useMeshForm('engine', schema, {
UITrigger: {
// Vue 响应式绑定
signalCreateor: () => ref(0),
signalTrigger(signal) {
signal.value++;
}
}
});添加联动依赖
engine.config.SetRule("billing.totalPrice", "billing.priceDetail", "value", {
logic: ({ slot }) => {
const [total] = slot.triggerTargets; // 从触发目标中解构出 totalPrice
return total > 2000 ? "大客户折扣" : undefined;
}
});