loading...

# 插件系统

在前面的章节中,我们已经对 ZodUI 的基本使用有了一定的了解,但是 ZodUI 的功能远不止于此,它还提供了一套完整的插件系统,可以让你在不改变我们源码的情况下,对功能进行扩展。

# 基本概述

我们通过一整套完整的类型系统来为你提供完善的插件开发体验,最小颗粒可达到每一种类型的控制器是如何进行交互。

# 插件类型

你可以为某一种组件库编写 ZodUI 插件,也可以为某一种类型的单元结构编写,甚至可以为某一种类型的单元结构的某一种状态编写。

# 组件库插件

组件库插件是最常见的插件类型,它可以为某一种组件库编写插件,你可以定制 ZodUI 中的任何一个组件,我们会在你定制了对应的组件后,将你定制的组件替换掉 ZodUI 中的默认组件。
同样的通过我们的定义,可以为组件抹平组件库之间的差异,使得你可以在不同的组件库之间进行切换,而不需要改变你的代码。
不过同样的组件库插件的开发需要去遵守 ZodUI 中暴露出来的类型接口,用于统一组件的参数。

扩展点:

  • 基础组件
  • 图标组件

# 单元结构插件

ZodUI 中渲染结构中的最小单元,这是 ZodUI 中与类型绑定的最小单元,他会在对应组合器构造的交互中用于渲染类型所对应的交互方式。
但是我们知道类型并不能单一决定交互方式,我们需要补充其他的信息来决定交互方式,所以我们会向单元结构中注入它说处的上下文切换器,以及在 Zod 描述中对该类型的补充信息。
通过这些信息,你就能在极大的程度上控制 ZodUI 中对应类型与交互的方式。

扩展点:

  • 类型
  • 状态
  • 上下文切换器
  • 快捷菜单项

# 编排插件

当我们定义好目标原子类型的交互方式后,我们就需要将这些原子类型单元结构组合起来,形成一个完整的交互方式,这就是编排插件的作用。

arrow_upward
comment

摘要