今天看文档,意外的看到这么一段话
这里有两种方法,可以安装node依赖包
1.npm直接指向淘宝镜像
a.单次使用
npm install --registry=https://registry.npm.taobao.org
b.多次使用(TODO)
将npm直接指向了淘宝镜像,使用npm i 则可以下来依赖包
2.安装cnpm
a.使用阿里定制的 cnpm 命令行工具代替默认的 npm,输入下面代码进行安装:
$ npm install -g cnpm --registry=https://registry.npm.taobao.org
b.检测cnpm版本,如果安装成功可以看到cnpm的基本信息。
cnpm -v
c.使用cnpm i 下载node_module依赖包
3.两者的异同
a.同
两种方式其实都是指向了淘宝的镜像下载依赖包(因为npm的插件服务器是在国外,所以国内访问收到网络的限制会很慢。所以淘宝直接在国内不输了一套:“这是一个完整 npmjs.org 镜像,你可以用此代替官方版本(只读),同步频率目前为 10分钟 一次以保证尽量与官方服务同步。也就是说我们可以使用淘宝布置在国内的服务器来进行node安装。)
b.异
通过cnpm i 下载的
node_module会发现,插件a会存在与其对应的_a和a两个文件夹,两个文件夹之间存在依赖关系
从package.json读取包安装包版本,并不会生成package.lock.json
通过npm i 下载的
node_module会发现,插件a只存在一个与其对应的a文件夹
如果没有package.lock.json.从package.json安装包后,生成package.lock.json
有package.lock.json,则与package.json对比,安装package.json相应包
速度上来说,直接用cnpm比npm快的多(貌似与文件结构有关TODO)