Vite+React项目执行npm run build报错Cannot read properties of undefined (reading 'thisArg')
解决Vite+React构建时Rollup的
Cannot read properties of undefined (reading 'thisArg')错误 这个错误是Rollup在构建过程中的内部解析错误,以下是几个可行的排查和解决步骤:
更新Vite和Rollup版本
错误源于Rollup的内部逻辑,大概率是版本兼容问题。执行以下命令更新Vite(会自动同步兼容的Rollup版本):npm install vite@latest --save-dev之后再尝试执行
npm run build。排查代码中的语法/写法问题
开发模式下Vite的语法检查可能更宽松,但构建时Rollup的AST解析会严格校验。检查项目中是否有以下情况:- 不当使用
this的代码(比如在箭头函数中错误引用this) - 第三方库或自定义代码中的非标准JS语法
可以尝试注释掉最近新增的组件或代码块,逐步定位到引发错误的文件。
- 不当使用
临时禁用构建优化
部分Vite的构建优化可能触发Rollup的bug,在vite.config.js中临时关闭压缩或调整Rollup配置:export default defineConfig({ build: { minify: false, // 先关闭压缩测试 rollupOptions: { // 移除自定义的Rollup插件或配置(如果有) } } })若能成功构建,再逐步开启优化项排查具体问题。
彻底清除缓存
除了node_modules,还要清理npm和Vite的缓存:npm cache clean --force rm -rf .vite dist # Windows系统用 rmdir /s /q .vite dist npm install之后重新执行构建命令。
排查第三方依赖
新增的第三方依赖可能存在代码问题导致Rollup解析失败。尝试移除最近添加的依赖,或执行npm update更新所有依赖后再测试。
内容的提问来源于stack exchange,提问作者antsmasher
相关产品推荐
相关产品推荐

