一、NPM 介绍

  • 1.说明:NPM(节点包管理器)是Nodejs的包管理器,用于节点插件管理(包括安装,卸载,管理依赖等)
  • 2.使用NPM安装插件:命令提示符执行npm install <   name  > [-g] [--save-dev]
    <  name  >:节点插件名称。
    例:npm install pm2 --save -dev
  • 3.-g:全局安装。 将会安装在系统目录下,并且写入系统环境变量,像重要的脚手架和构建模块推荐全局安装,用起来也方便,如vue, hexo, webpack等这些;非全局安装:将会安装在当前定位目录;全局安装可以通过命令行任何地方调用它,本地安装将安装在定位目录的node_modules文件夹下,通过要求调用;
  • 4.--save:将保存至package.json中(package.json是NodeJS项目配置文件)
  • 5.-dev:保存至package.json的devDependencies节点,不指定-dev将保存至依赖节点
  • 6.使用 npm 卸载插件: npm uninstall <  name  > [ -g ] [ --save-dev ]
  • 7.使用 npm 更新插件: npm update <  name  > [ -g ] [ --save-dev ]
  • 8.更新全部插件:npm update [ --save-dev ]
  • 9.查看npm帮助:npm -help
  • 10.查看当前目录已安装插件:npm list

二、CNPM 介绍

  • 1.说明:因为谷歌安装插件是从国外服务器下载,受网络影响大,可能出现异常。针对这一问题,淘宝团队造了CNPM这一代替。来自官网:“这是一个完整npmjs.org镜像,你可以用此代替官方版本,同步频率目前为10分钟一次以保证尽量与官方服务同步"。
  • 2.官方网址
  • 3.安装:命令提示符执行npm install cnpm -g --registry=https://registry.npm.taobao.org
  • 4.注意:安装完后最好查看其版本cnpm -v或关闭命令提示符重新打开,安装完直接使用有可能会出现错误。

三、实际用法

1. 针对 electron

  这个东西,简直就把你卡在初始的安装过程,基于我是ubuntu,且npm是6.13.4的版本,阐述一下遇到的几个坑点:
①直接npm install,会卡死在node install.js那一步上,原因是下载是外网,墙了下不下来。
②那么尝试改淘宝源?没用,一样的跟上一步一样,因为治标不治本,是它的下载那部分代码的原因。
③网上的修改.npmrc,在里面添加electron_mirror,那个同治标不治本,是不会让你卡在node install.js了,但会报httpparseError 404这个错误,这个时候,npm start是开不起来的,因为你都没下好。
④网上还有一个方法是,手动下载electron.zip,移动到node_modules里的electron中,修改install.js代码,手动执行node install.js,同样的,这个方法也失败,npm start同样打不开。
⑤最后,在网上找到的一个真正很好的分析情况的,我试了一下他的方法,就是直接cnpm install后,就可以了,如果你也遇到类似情况,可以参考我说的这几个方法,我的话是第五个才有效。附上解决问题的 链接

2. 针对 gulp-image 等 gulp-xxx

  这是关于压缩资源的模块,由于内容比较多,用npm install会比较久,造成卡死的错觉;一定要用npm install,用cnpm install的话,会造成如果需要重置的话,重新安装报错。

3. 针对其他模块

  我在开发过程中,目前遇到情况,除了以上两个,像vue那些脚手架可以直接npm install下来,太慢或不行的一般改一下淘宝源就可以下来,能用npm下载的不建议用cnpm,容易出一些奇奇怪怪的问题。

—— 未完待续,持续更新 ——

4. 关于出错和重置

  用npm安装模块完全就是跟pip装模块一样挑战心跳,出个错都能让你纠结好久,但有的时候,神奇的就是,全部一波带走后,重新安装就没事了,遇到这种情况的话,一般要先删干净,步骤如下:

rm -rf node_modules    //删除node模块
rm package-lock.json  //删除依赖配置,注意不是删除package.json
npm cache clean -f  //强制将npm缓存清空

  • alipay
  • wechat