vue项目打包内存溢出/JavaScript heap out of memory

报错信息

FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory

解决方法

方法1 (尝试无效)

此方法使用到三方插件
使用后会在node_modules的包内添加--max-old-space-size=10240

1. 全局安装
npm i -g increase-memory-limit
2. 在项目根目录运行命令
increase-memory-limit

使用此方法后打包的时候也会报错, 大致错误为 不支持词语法。
百度查到这个写法在 node v8.0 之后以废弃

方法2 (测试可用)

将打包命令修改为

"build:prod": "node --max_old_space_size=4096 node_modules/@vue/cli-service/bin/vue-cli-service.js build"

在此文件内,我是重新添加了一条命令进行测试。可直接修改 build:prod 命令
在这里插入图片描述
修改后可能会遇到以下错误,个人理解大致意思为:
无法找到当前 node v12.x 版本环境,当前找到 node v8.x 版本 应该是 package.json 中的node 版本 或者某些依赖所需的版本node 版本。
vue项目打包内存溢出/JavaScript heap out of memory_第1张图片
只需修改当前找到的对应 node 版本即可

windows 可使用 nvm 来管理 node 版本
Mac OS 可使用 n 来管理 node 版本

vue项目打包内存溢出/JavaScript heap out of memory_第2张图片
在这里插入图片描述

如果启动项目也存在 内存溢出情况应该也可使用此方法解决

"serve": "node --max_old_space_size=4096 node_modules/@vue/cli-service/bin/vue-cli-service.js serve --open"

你可能感兴趣的:(Vue,nodejs,vue.js,前端)