# node升级&其他问题
# 如果node版本太低要升级node的话,用nvm升级,nvm ls-remote只显示iojs版本
#问题分析:
此乃我天朝网络问题。
使用命令切换源
export NVM_NODEJS_ORG_MIRROR=https://npm.taobao.org/dist
然后nvm install 16.17.1(稳定版本)
vm use 16 还要看一下项目里面改了没有,可能局部node还是低版本的
# devDependencies与dependencies的区别
dependencies 表示我们要在生产环境下使用该依赖,devDependencies 则表示我们仅在开发环境使用该依赖。在打包时,一定要分清哪些包属于生产依赖,哪些属于开发依赖,尤其是在项目较大,依赖包较多的情况下。若在生产环境下错引或者少引依赖包,即便是成功打包,但在使用应用程序期间也会报错,导致打包好的程序无法正常运行。
# npm与cnpm的区别
说到npm与cnpm的区别,可能大家都知道,但大家容易忽视的一点,是cnpm装的各种node_module,这种方式下所有的包都是扁平化的安装。一下子node_modules展开后有非常多的文件。导致了在打包的过程中非常慢。但是如果改用npm来安装node_modules的话,所有的包都是树状结构的,层级变深。
由于这个不同,对一些项目比较大的应用,很容易出现打包过程慢且node内存溢出的问题(这也是在解决electron打包过程中困扰我比较久的问题,最后想到了npm与cnpm的这点不同,解决了node打包内存溢出的问题,从打包一次一小时优化到打包一次一分钟,极大的提高了效率)。
所以建议大家在打包前,讲使用cnpm安装的依赖包删除,替换成npm安装的依赖包。