经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » JS/JS库/框架 » Node.js » 查看文章
nodejs的npm改为国内源和参数
来源:cnblogs  作者:赵青青  时间:2021/5/31 8:55:16  对本文有异议

npm源改为国内

此方法不需要安装cnpm也可以使用淘宝镜像,提高国内访问速度

由于 Node 的官方模块仓库网速太慢,模块仓库需要切换到阿里的源。

  1. npm config set registry https://registry.npm.taobao.org/

执行下面的命令,确认是否切换成功。

  1. npm config get registry

如果输出:https://registry.npm.taobao.org/,则表示切换成功

npm源换回默认

  1. npm config set registry https://registry.npmjs.org/
  2. npm config get registry

cnpm

cnpm是淘宝团队做的国内镜像,因为npm的服务器位于国外可能会影响安装速度。淘宝镜像与官方同步频率目前为 10分钟 一次以保证尽量与官方服务同步。

PS.网上有一些贴子说cnpm会丢包,如果遇到丢包,删除node_modules目录,再重新使用npm,总体来说网络上不太建议使用cnpm。

官网:https://developer.aliyun.com/mirror/NPM?from=tnpm

安装:命令提示符执行
npm install cnpm -g --registry=https://registry.npm.taobao.org

cnpm -v 来测试是否成功安装

安装完成后可以cnpm通过来代替默认的npm

  1. cnpm install [name]

nrm

  • nrm包安装命令: npm i nrm -g
  • nrm能够管理所用可用的镜像源地址以及当前所使用的镜像源地址,但是只是单纯的提供了几个url并能够让我们在这几个地址之间方便切换
  • nrm ls即nrm list,查看所有可用的镜像,并可以切换。*号表示当前npm使用的地址,可以使用命令nrm use taobaonrm use npm来进行两者之间的切换。
  1. C:\Users\qing>nrm ls
  2. npm -------- https://registry.npmjs.org/
  3. yarn ------- https://registry.yarnpkg.com/
  4. cnpm ------- http://r.cnpmjs.org/
  5. * taobao ----- https://registry.npm.taobao.org/
  6. nj --------- https://registry.nodejitsu.com/
  7. npmMirror -- https://skimdb.npmjs.com/registry/
  8. edunpm ----- http://registry.enpmjs.org/

npm参数-g -S -D

  • -g:全局安装。 将会安装在 C:\Users\Administrator\AppData\Roaming\npm并且写入系统环境变量;非全局安装:将会安装在当前定位目录;全局安装可以通过命令行任何地方调用它,本地安装将安装在定位目录的node_modules文件夹下,通过要求调用;
  • -S:即npm install module_name --save,写入package.jsondependencies ,dependencies 是需要发布到生产环境的,比如jq,vue全家桶,ele-ui等ui框架这些项目运行时必须使用到的插件就需要放到dependencies
  • -D:即npm install module_name --save-dev,写入package.jsondevDependencies ,devDependencies 里面的插件只用于开发环境,不用于生产环境。比如一些babel编译功能的插件、webpack打包插件就是开发时候的需要,真正程序打包跑起来并不需要的一些插件。

为什么要保存在package.json 因为node_module包实在是太大了。用一个配置文件保存,只打包安装对应配置文件的插件,按需导入。

EAI_AGAIN

  1. C:\Users\qing>npm install -g artipub --registry=https://registry.npm.taobao.org
  2. npm ERR! code EAI_AGAIN
  3. npm ERR! errno EAI_AGAIN
  4. npm ERR! request to https://registry.npm.taobao.org/caporal failed, reason: getaddrinfo EAI_AGAIN registry.npm.taobao.org
  5. npm ERR! A complete log of this run can be found in:
  6. npm ERR! C:\Users\qing\AppData\Roaming\npm-cache\_logs\2020-05-12T04_34_24_304Z-debug.log

在安装依赖时,报上面这个错误,网上有说防火墙的,我机器上的防火墙是关闭状态的,通过ping也是能连通这个链接

解决方法

通过上面提到的nrm,把源从taobao切换为其它就解决了,因为我们公司的网络屏蔽了淘宝和京东等网站。

需要全局安装的库

全局安装的库在这个目录C:\Users\qing\AppData\Roaming\npm,都会有xx.cmd

  1. --安装webpack
  2. npm install webpack -g
  3. npm install webpack-cli -g
  4. --安装yarn
  5. npm install --global yarn

参考资料:《'webpack' 不是内部或外部命令,也不是可运行的程序 或批处理文

其它问题

为什么node_modules里面会有.staging这个东西?

.staging是在运行过程中出现的,当真正install所有包之后,node_modules里面的包就会显示正常,也就是,出现这个就是没有加载完。

原文链接:http://www.cnblogs.com/zhaoqingqing/p/14827655.html

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号