用途:@json-render/vue 是 json-render 的 Vue 3 渲染器,把 JSON 规格转换成 Vue 组件树,支持数据绑定、可见性条件与动作。适用于从 JSON 规格构建 Vue UI、定义 Vue 组件注册表等场景。
安装:npm install @json-render/vue @json-render/core zod。对等依赖为 vue ^3.5.0 与 zod ^4.0.0。
主要能力:用 defineCatalog 配合 @json-render/vue/schema 与 zod 定义组件目录(含 props、slots、actions);用 defineRegistry 以 h() 渲染函数创建类型安全的组件注册表;Renderer 按注册表渲染规格。提供 StateProvider、ActionProvider、VisibilityProvider、ValidationProvider 等上下文提供者,以及 useStateStore、useStateValue、useBoundProp、useActions、useAction、useFieldValidation、useIsVisible、useUIStream、useChatUI 等组合式函数。支持命名插槽、动态属性表达式($state、$bindState、$cond、$template、$computed)、可见性条件、内置动作(setState、pushState、removeState、validateForm)、事件系统与流式规格。可通过 createStateStore 传入外部 StateStore,接入 Pinia、VueUse 等状态管理。
使用方式:先定义 catalog,再定义 registry,然后在模板中用 StateProvider、ActionProvider 包裹 Renderer 并传入 spec 与 registry。命名插槽中,默认内容放在 children,其他插槽用顶层 slots 对象声明,注册表组件通过 slots.header?.() 等渲染。注意 useStateStore().state 返回 ShallowRef,需用 state.value 访问。
限制:资料未提供更多平台、收费或效果信息。