LowcodeEngine实战-VueRenderer+vite搭建应用级别预览

背景

我们基于LowcodeEngine做了一个低代码平台,支持选择React和Vue框架。今天介绍一下选择Vue框架下的应用预览和调试功能。 Vue画布采用的是社区的LowcodeEngineVue,我们的低代码应用设计器是应用级别的,但是LowcodeEngine和LowcodeEngineVue给出的demo都是页面级别的预览。这种限制在涉及到页面切换等页面之间有交互的时候变得非常突出。所以我们决定将单页面预览调试进行升级提升至应用级别的预览调试。

方案

使用vite搭建一个新的vue项目,在这个项目中采用动态路由的方式,将各个低代码页面无缝的集成到当前项目的路由系统重,从而实现基于路由的应用界别预览功能。低代码应用涉及的其他资源也通过动态添加的方式加载到这个项目中来。

实现

使用vite创建一个Vue3的模版项目。

这个就直接用vite脚手架创建就行了,这里直接跳过。

添加vue-router及lowcode-vue-renderer相关和其他项目依赖

添加vue-router、lowcode-vue-renderer、lowcode-utils依赖。根据自己项目添加其他所需要的依赖。

VueRenderder组件封装成route使用。

为了让VueRenderder组件更好的融入路由系统,将其封装成route形式,并通过props将 将schema及components等相关资源传入VueRenderer组件中

通过动态添加的方式注册到应用路由上。

最后通过router.addRoute方法将这些route动态添加到应用路由系统上,实现应用界别的预览。

问题

Vue is not defined

低代码物料和VueRenderer打包的都配置了使用全局的Vue对象,所以在我们的项目中要配置一个全局的Vue对象。打包排除Vue依赖,通过cdn引入全局Vue对象。

效果

我们在低代码应用设计器中画了三个页面(main、page1、page2)。main页面中通过两个按钮切换路由来展示main下的page1和page2页面。main页面下有个route组件,用来展示page1和page2。将这个低代码应用设计器中产出物导入到预览应用项目下就实现了应用界别的调试和预览,这样在低代码设计器中就只是设计模式(不触发低代码物料的点击等事件,提升用户体验)

最后

关于调试还没有找到好的表现形式,当前还是按照逻辑编排的执行顺序打印的日志。 未来可能会将日志和流程图统一起来,逻辑编排是基于流程图的。进入到调试后执行基于流程图编排的逻辑,在流程图中可视化的展示逻辑执行到了哪里,点击具体逻辑查看执行日志。

本文正在参加阿里低代码引擎征文活动

相关推荐
低代码布道师18 分钟前
医疗小程序11获取最近7天排班计划
低代码·小程序
坚果派·白晓明23 分钟前
开源鸿蒙终端工具Termony构建HNP包指导手册Mac版
macos·开源·harmonyos
fakaifa38 分钟前
【全开源】智慧共享农场源码独立版+uniapp前端
前端·uni-app·智慧农场·源码下载·智慧农场小程序·智慧共享农场
toooooop844 分钟前
uniapp多个页面监听?全局监听uni.$emit/$on
前端·javascript·uni-app
骨子里的偏爱1 小时前
【案例】uniapp实现内部信息与外部的html网页双向通信的完整的过程,附加完整的代码部分
前端·uni-app·html
u***j3241 小时前
GitHub上10个优秀的微服务开源项目
微服务·开源·github
爱泡脚的鸡腿1 小时前
uni-app D4 实战(小兔鲜)
前端·vue.js·架构
星火飞码iFlyCode1 小时前
iFlyCode+SpecKit应用:照片等比智能压缩功能实现
前端·javascript
广白1 小时前
钉钉小程序直传文件到 阿里云OSS
前端·vue.js·uni-app
zyfts2 小时前
🔥告别 20 分钟等待!NestJS 生产级消息队列 BullMQ 实践指南
前端·后端