一、问题描述
我们用antd pro v5搭建前端项目,启用qiankun微前端模式,终端报错如下:
Uncaught (in promise) Error: Module "xxx" does not exist in container.
while loading "xxx" from webpack/container/reference/mf
经过排查,上述问题其实是因为项目同时使用mfsu和qiankun导致的,而antd pro v5脚手架默认是开启mfsu功能的。
二、解决方案
方案一:
1、修改mfsu的mfName属性配置
分别在主、子应用的config.ts文件中设置不同的mfName值
mfsu: {
mfName: 'xxx' // mfName:string。指定预编译依赖的变量名,默认为mf
}
2、删除src/.umi,再重启项目即可
方案二:
关闭mfsu功能,在config.ts中把mfsu配置去掉。
【推荐文章】
微前端系列讲解--应用集成方案(qiankun+umi+vue)https://blog.youkuaiyun.com/w544924116/article/details/120105320antd pro项目使用qiankun,loading加载页不消失
https://blog.youkuaiyun.com/w544924116/article/details/120164997antd pro(ProLayout) mix混合菜单不生效
https://blog.youkuaiyun.com/w544924116/article/details/120211891引用window自定义变量以及ts在window上自定义变量数据类型报错的解决方案
https://blog.youkuaiyun.com/w544924116/article/details/120251686
感谢您读完本文!如果本文对您有帮助,请点个赞呗,您的点赞是对我最大的支持和认可!
我的公众号:大前端教程,欢迎关注,会定期更新前端知识,希望能帮到您。