TS打包报错JavaScript heap out of memory
2024-12-20 19:10:22
56次阅读
0个评论
在对Vite项目执行npm run build命令时,出现如下错误:
FATAL ERROR: Reached heap limit Allocation failed - JavaScript heap out of memory
通过下面这个指令来放宽内存的使用限制还是报错:
cross-env NODE_OPTIONS=--max-old-space-size=4096 vite build
原以为是 vite build 阶段发生的问题,仔细看 output log 发现是在 ts 编译阶段 vue-tsc --noEmit 发生的错误;
所以放宽内存限制的指令必须放到 vue-tsc --noEmit 前面。4096表示4G内存。
将package.json文件中的
"scripts": {
"dev": "vite",
"build": "vue-tsc --noEmit && vite build",
"preview": "vite preview"
}
修改为
"scripts": {
"dev": "vite",
"build": "cross-env NODE_OPTIONS=--max-old-space-size=4096 vue-tsc --noEmit && vite build",
"preview": "vite preview"
}
或者修改为:
"scripts": {
"dev": "vite",
"build": "vite build",
"preview": "vite preview"
}
但这样就不能提前发现类型错误。
vue-tsc:Vue 官方提供的命令,用于执行 TS 的类型检查。它在执行时会根据项目中的 tsconfig.json 文件配置进行类型检查。
--noEmit:TS 编译器的选项,使用 --noEmit 选项后,编译器仅执行类型检查,而不会生成任何实际的编译输出。
可以安装 cross-env 依赖设置环境变量
npm install --save-dev cross-env
00
- 0回答
- 1粉丝
- 0关注
相关话题
- Java执行Javascript代码
- Fabric.js Zoom in & Zoom out
- Apache commons compress文件打包、压缩
- javascript判断上传的文件是否为图片
- Maven打包war包含空文件夹
- 安装nodejs v18时报错GLIBC_2.27
- ImageIO.read()报错:ArrayIndexOutOfBoundsException: 4096、IIOException: I/O error reading PNG header!
- Spring boot打包后从类路径目录中获取资源列表
- hls播放m3u8 添加header请求头,在请求ts的url上添加参数
- 解决执行脚本报syntax error: unexpected end of file或syntax error near unexpected token `fi'错误的问题