当我使用Ionic serve命令运行Ionic 3项目时,我会得到这个错误:
当前回答
#!在ionic-app-scripts.js文件中的/usr/bin/env node——max-old-space-size=4096不能正常工作。
修改node_modules /。bin / ionic-app-scripts。CMD
@IF EXIST "%~dp0\node.exe" (
"%~dp0\node.exe" "%~dp0\..\@ionic\app-scripts\bin\ionic-app-scripts.js" %*
) ELSE (
@SETLOCAL
@SET PATHEXT=%PATHEXT:;.JS;=;%
node --max_old_space_size=4096 "%~dp0\..\@ionic\app-scripts\bin\ionic-app-scripts.js" %*
)
最后工作。
其他回答
在项目文件夹中运行此命令。使用服务而不是构建
node --max_old_space_size=8000 node_modules/@angular/cli/bin/ng serve --prod --port=4202
在我的案例中,我通过安装Node.js 12.10.0版本解决了这个问题。
另一个非angular的答案(我在AWS Amplify上构建React应用时也遇到了同样的问题)。
正如Emmanuel所提到的,这似乎来自Node.js v10和Node.js v12处理内存的方式的差异。
我试着增加记忆,但没有用。但是使用Node.js v12做到了。
根据richard的解释,检查如何将nvm use $VERSION_NODE_12添加到构建设置中
前端: 阶段: preBuild: 命令: - nvm使用$VERSION_NODE_12 - NPM ci 构建: 命令: - nvm使用$VERSION_NODE_12 - node -v - NPM运行脚本构建
对于那些从谷歌中得到这个问题并想要在Dockerfile中修复这个问题的非angular通用JavaScript答案(将6144替换为您想要分配的以兆字节为单位的内存量)。
我的实现在Node.js v14.1.0中工作,由Docker版本20.10.5执行,在气流v2.0.1中使用DockerOperator构建55c4c88)。
FROM node:14.1.0
# Create app directory
WORKDIR /tmp/dockerspace/
# Install app dependencies
# A wildcard is used to ensure both package.json AND package-lock.json are copied
COPY package*.json ./
RUN npm install
# Bundle app source
COPY . .
CMD node --max-old-space-size=6144 app.js
在我的例子中,错误是由于在for中不恰当地使用条件引起的。循环。而不是:
for (let t = startNo; t <= endNo; t++) {}
我有:
for (let t = startNo; endNo; t++) {}
推荐文章
- 使用jQuery改变输入字段的类型
- 在JavaScript中,什么相当于Java的Thread.sleep() ?
- 使用jQuery以像素为整数填充或边距值
- 检查是否选择了jQuery选项,如果没有选择默认值
- Next.js React应用中没有定义Window
- 如何重置笑话模拟函数调用计数之前,每次测试
- 如何强制一个功能React组件渲染?
- 在javascript中从平面数组构建树数组
- 将Dropzone.js与其他字段集成到现有的HTML表单中
- 如何在AngularJS中观察路由变化?
- JavaScript DOM删除元素
- 将dd-mm-yyyy字符串转换为日期
- Javascript复选框onChange
- Javascript函数前导bang !语法
- 如何在页面上遍历所有DOM元素?