基于NuxtJS构建Shopware 6 PWA应用@vue/composition-api导出错误如何解决
TypeError: Module should export a function: @vue/composition-api 报错解决方法
该报错核心原因为@vue/composition-api版本与Shopware 6 PWA、NuxtJS依赖的Vue 2.x版本不兼容,按以下步骤修复即可:
- 锁定
@vue/composition-api适配版本
Shopware 6 PWA默认仅适配@vue/composition-apiv1.4.9及以下版本,更高版本调整了导出格式会触发兼容问题。先卸载现有版本,安装指定版本:
# npm操作 npm uninstall @vue/composition-api npm install @vue/composition-api@1.4.9 --save # yarn操作 yarn remove @vue/composition-api yarn add @vue/composition-api@1.4.9
- 清理缓存后重新构建
NuxtJS本地缓存会残留旧依赖的编译产物,清理后再启动项目:
rm -rf .nuxt node_modules/.cache npm run dev
移除Nuxt配置中重复的composition-api引入
打开nuxt.config.js,检查modules配置项,删除单独引入的@vue/composition-api/nuxt配置,Shopware 6 PWA内部已内置该模块的引入逻辑,重复引入会触发导出异常。强制固定依赖版本(可选)
如果上述操作后仍报错,在package.json中添加resolutions规则强制所有依赖使用指定版本的@vue/composition-api:
{ "resolutions": { "@vue/composition-api": "1.4.9" } }
添加后重新执行依赖安装命令即可生效。
内容的提问来源于stack exchange,提问作者Martin
相关产品推荐
相关产品推荐

