# 微应用集成
对于平台型应用,可能会集成很多其他独立部署的应用,传统的做法是通过iframe嵌入的方式,但是这种方式存在很多问题。 低代码框架提供了微应用的引擎,能够将其他的低代码应用集成到当前主应用中,通过远程引用的方式来实现。微应用设计原则:确保功能独立,不依赖于主应用,独立部署,避免循环引用的场景。
举个例子,有个主应用,以及应用1(他们是独立部署,对接同一套 IAM),场景是需要在 主应用 中,集成 应用1 的页面,将功能进行重新组装。
# 主应用配置
要引用应用1的页面,需要在主应用的配置文件中,添加如下配置:
# application.yml
app:
dengine:
micro-app:
enabled: true
apps:
- name: "app-1" # 可自定义,用于标识应用1
base-url: "http://ip:port/app-1/" # 应用1的根路径
service-url: "http://ip:port/app-1/service" # 应用1的 /service 路径
config-url: "http://ip:port/app-1/config.json" # 应用1的 /config.json 路径
option-set-url: "http://ip:port/app-1/_meta/dict" # 应用1的 /_meta/dict 路径
其中 http://ip:port/app-1 是指应用1的访问路径。以上这些配置路径地址可以通过浏览器的 network 面板,搜索关键字进行获取。
配置完成后,需要重启后端服务。
# 引用微应用页面
进入IDE,在新建页面的地方找到 新建引用页面, 选择远程模块 app-1 ,选择远程页面。


新建完成后,会在当前应用内创建一个引用页面,该引用页面是不允许更改的,因此无法拖拽组件到这个页面。
为了方便区分,页面标题建议加上标识来区分是远程页面,例如:app-1-页面名称(或者是通过文件夹来区分)。
细心的同学会发现,页面JSON中多了microApp字段, 这是引用型页面的特殊标记。

最后,可以在导航中或者内联渲染容器中引用上述页面了。