为什么选VueCook

一个低代码平台往往都会有一个用来可视化搭建的界面,通常这个界面会提供界面编排逻辑编排两种能力。其中,界面编排表现为通过拖拽预制好的组件生成页面,通过组件编辑器修改组件的属性。逻辑编排则是将业务逻辑变成一个个函数,然后通过控制函数的出参入参来达到编排逻辑的能力。除此之外,搭建界面往往还会提供一些额外的界面,例如页面树组件列表等来辅助搭建。

当我们去开发一个低代码平台的时候,往往需要对上述能力进行重新的抽象和组织,而每个平台的开发者对这些能力的抽象和组织又不尽相同,这造成了每个低代码平台之间的资源往往都是不互通的。一个平台的组件没办法用到另一个平台,现有的一些组件库或者业务组件也没办法直接添加到平台上。组件的属性编辑只能是平台开发者提供的一种固定的编辑方式,想要自定义编辑器往往非常困难。

VueCook 作为一个基于vue的低代码平台辅助工具,它试图对上述能力定义一个规范,用来保证一个低代码平台的可维护性可扩展性。同时让开发者在开发一个可视化搭建平台的时候,减少一些时间在定义组件的开发规范上,让开发者更容易的将已有的Vue组件和业务逻辑低代码化,并且可以让开发者自己来控制组件的属性编辑方式。

为了上述目标,VueCook将上述能力抽象成了三个东西,组件逻辑交互面板,这些在VueCook当中统称为资源。其中:

  • 组件:一种预制好的UI控件,支持一些属性的配置,如props、slots、events等。VueCook会将这些配置通过Vue中的动态组件进行渲染,并且渲染的时候不会为组件添加任何额外的包裹层,以保证组件DOM结构在渲染时与开发组件的时候是一致的。
  • 逻辑:一个定义好入参的函数,它用来表达某种具体的业务逻辑。通过配置它的入参,将其配置放入到某一个组件的属性中,可以把某种业务逻辑和组件结合起来。
  • 交互面板:一个自定义的交互面板,用来扩展搭建平台的编排能力,利用它可以扩展自定义的编辑器,自定义的信息展示面板等等,它的本质是对组件逻辑的配置进行增删改查,以达到扩展编排能力的目的。