VTJ.PRO 开放在线版接入 AI+低代码源码

这是一个基于 VTJ 低代码引擎实现的在线开发平台全功能示例,支持多平台应用开发。项目包含以下核心功能:

  • 设计器与渲染器集成
  • 自定义 Service  OpenAPI 实现
  • 设计器个性化定制扩展 项目功能完整度达到生产环境要求,支持定制、编译和部署。

准备工作

本项目是低代码平台前端工程,默认集成 VTJ 官方标准服务接口。由于接口调用需要登录授权,如需静默自动授权,请获取账号授权签名。

获取授权签名

  1. 访问 https://lcdp.vtj.pro
  2. 登录后,点击右上角用户信息卡片中的"查看签名"按钮
  3. 复制签名内容

配置环境变量

将获取的签名粘贴到项目根目录的 env.json 文件中:

json
{
  "AUTH_CODE": "在此处粘贴您的账号签名",
  "REMOTE": "https://lcdp.vtj.pro"
}

完成以上配置后,您将获得一个功能完善、支持多平台(Web、H5、UniApp)的在线低代码开发环境。

项目脚本

命令 描述
npm run setup 使用 registry.npmmirror.com 镜像源安装依赖
npm run dev 启动开发服务器
npm run sit 测试环境构建
npm run build 生产环境构建
npm run preview 预览构建产物
npm run clean 清理项目工程

项目结构

本项目使用 @vtj/cli 搭建,基于 Vite + Vue3 + TypeScript 技术栈。采用多平台应用页面入口设计,实现环境隔离和优化打包体积。

vite.config.ts 中配置了多入口打包:

typescript
const pages = {
  // 平台主应用:包含应用管理和设计器
  main: './index.html',

  // Web应用预览
  web: './web/index.html',

  // H5应用预览
  h5: './h5/index.html',

  // UniApp应用预览
  uniapp: './uniapp/index.html'
};

工程目录说明

项目结构与标准工程基本一致,以下是 VTJ 特有的重要目录说明:

最佳实践

设计器集成

设计器实现位于 /src/views/designer.vue,所有平台共用同一设计器,通过加载项目 DSL 的 platform 属性确定目标平台功能。

设计器路由格式:/:platform/:id

  • platform: 平台标识(web、h5、uniapp)
  • id: 应用标识(对应项目 DSL 的 id 字段)

渲染器集成

各平台渲染器实现文件:

  • Web: /src/platform/web/main.ts
  • H5: /src/platform/h5/main.ts
  • UniApp: /src/platform/uniapp/main.ts

自定义 Service

低代码平台的项目、文件和历史记录通过 Service 进行存储管理。/src/shared/service.ts 实现了远程 Service,将数据保存至后端数据库。

自定义 OpenAPI

OpenAPI 提供低代码平台的远程服务能力,如页面模板和 AI 助手功能。/src/extension/openapi.ts 实现了自定义 OpenAPI,您可以根据需求调整 API 接口,只需确保函数签名符合类型要求。

设计器扩展

如需扩展设计器功能,可通过 /src/extension/install.ts 进行开发。可用平台 API 包括:

  • widgetManager
  • depsManager
  • setterManager

后端实现

后端实现可自行设计,只需满足 Service 和 OpenAPI 的接口规范。具体实现细节请参考 docs 目录下的文档。

重要说明

  • API方法统一在 /src/apis 目录下定义,函数都带有TS签名和注释, 可以按自己的需求更换对应接口。

  • 代码中的Access是为了适配官方接口服务的权限控制,如果你改为自己实现的服务,可以不需要Access

  • 请求工具使用了 setGlobalRequest 配置全局的request, 如果在设计器中的设计视图和预览也需要用相同的request, 可以通过参数传入到引擎和createProvider

    ts
    // 传入引擎
    const engine = new Engine({
      //省略其他代码
      adapter: {
        request
      }
    });
    
    // 传入 createProvider
    const { provider, onReady } = createProvider({
      //省略其他代码
      adapter: {
        request
      }
    });
  • 如果您不需要模版和AI功能,就不需要定义OpenAPI, 只需要把引擎的remote参数设置为null就可以关闭这两个功能。

设计器交互

在线体验

访问 Demo: https://vtj.pro/demo/

优秀的个人博客,低调大师

微信关注我们

原文链接:https://www.oschina.net/news/356993

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

相关文章

发表评论

资源下载

更多资源
Mario,低调大师唯一一个Java游戏作品

Mario,低调大师唯一一个Java游戏作品

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Eclipse(集成开发环境)

Eclipse(集成开发环境)

Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。

Java Development Kit(Java开发工具)

Java Development Kit(Java开发工具)

JDK是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。

Sublime Text 一个代码编辑器

Sublime Text 一个代码编辑器

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。