返回博客

Vue Cli 打包报错:Uncaught ReferenceError: exports is not defined

Vue Cli 打包报错 Uncaught ReferenceError: exports is not defined,解决方法:导入的包使用了 CommonJS 规范,而 Vue Cli 打包使用的是 ESM 规范,导致冲突。文章分析了问题原因,并提供了解决方案。

Mt.r
|

报错信息如下

Uncaught ReferenceError: exports is not defined

解决方案

网上查了一下,线索在导入的包使用了 CommonJS 规范,而 Vue Cli 打包使用的是 ESM 规范,所以会报错。

然后 Vue 官方文档简单提及了一下,不过我没找到办法让 Vue Cli 打包支持 CommonJS 规范。

这就奇怪的很,开发模式没事,打包就会出现错误。

exports.test = test;
module.exports = { test };
export function test() {}

看一下上面这三个的导出方式,我用 rollup 打包的时候,加了 format: 'cjs',就会报错,后来我去掉了就解决了这个问题

转载