【抛砖引玉】微前端 demo 分享 qiankun + dva1.x + vue3

270 阅读1分钟

导语

dva1.x接入qiankun的例子不多,我在接入的过程中也遇到了一个疑问,至今没找到根本原因,故作本文记录。基础的demo,不涉及原理。抛砖引玉,希望有更多对dva或者微前端感兴趣的铁铁们补充赐教。

背景

有一个4年前的B端项目,技术栈dva 1.x,需要增加新功能模块A,而现在团队主技术栈vue,考虑到维护成本,决定引入微前端解决方案qiankun老项目作为主应用,增加一个路由页面加载微应用(新模块A)

demo 概览

主应用

微应用

遇到的问题

如下图所示,本地调试正常,build部署后有2个报错,

n.forEach is not a function

application 's' died in status NOT_BOOTSTRAPPED: e.activeWhen is not a function

development.gif

production.gif

production-bug.png

问题排查思路:调试和 build 好像只有压缩的区别,试一下不压缩打包,排除压缩的问题。果然没有报错了。至于压缩报错根本原因,还未找到。如果您有思路,请不吝赐教。

最终解决方案:将打包命令由atool-build改为atool-build --no-compress,即不压缩打包,