angular 内存溢出的问题解决
本项目用的是angular4搭建,用动态组件的形式来显示页面,之前遇到过因为内存溢出而导致无法aot的问题,
解决方法:手动改写内存上限
修改目录: my-project/node_modules/.bin 找到ng.cmd:
@IFEXIST"%~dp0\node.exe"( "%~dp0\node.exe"--max_old_space_size=8192"%~dp0\..\@angular\cli\bin\ng"%* )ELSE( @SETLOCAL @SETPATHEXT=%PATHEXT:;.JS;=;% node--max_old_space_size=8192"%~dp0\..\@angular\cli\bin\ng"%* )
修改目录:my-project/node_modules/.bin 找到ngc.cmd:
@IFEXIST"%~dp0\node.exe"( "%~dp0\node.exe"--max_old_space_size=8192"%~dp0\..\._@angular_compiler-cli@4.0.1@@angular\compiler-cli\src\main.js"%* )ELSE( @SETLOCAL @SETPATHEXT=%PATHEXT:;.JS;=;% node--max_old_space_size=8192"%~dp0\..\._@angular_compiler-cli@4.0.1@@angular\compiler-cli\src\main.js"%* )
至于到底是什么原因导致的内存溢出,还不清楚,只是有如下猜测:
1)文件过多;
2)订阅数据没有销毁占用内存,(看了下订阅的数据很少,应该不是的);
3)因为所有的组件都在一个根目录下(上面说了,用的动态组件没用路由),导致需要编译的组件过多?
暂时还不清楚只能先用设置内存上限的方法来解决,有大神的话望不吝指教;
还有一个问题就是用动态组件的方式,组件都在根目录下,会导致首次加载的时间过长。有奇思妙想请告诉我,哈哈
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。