随着前端技术的不断更新和发展,nodejs也越来越流行,作为一个web developer,要安装的依赖包、工具库也越来越多,所以npm几乎是所有前端开发者所必须要用到的,我在工作中曾经遇到过这样的问题,我在工作中需要和同事共同开发一个项目,我去git上把他的代码拉下来,习惯性的运行npm install,但是控制台报错了,说是node版本错误,于是我按要求重新下载了新版本的node,然后安装---->开发,几天后,该项目完了,我要回去继续开发我之前的项目,结果一回到之前那个项目,又报错node版本错误。。。这时我才意识到原来不同的项目也许会用到不同版本的node,但是我又想,此时难道我又要卸载当前的node,重新去下载安装吗,百度一下,发现了nvm这个东西,nvm是什么呢?nvm是node的版本管理工具,即:通过nvm我们可以随意切换当前系统里面的node版本,安装了nvm之后我们就可以安装npm,即不同版本的npm,安装了npm之后我们便可以使用镜像下载几乎所有的依赖包和工具库,但是我们可能有时候网络不太好或者某些原因会导致我们的下载速度很慢,此时我们可以安装/切换不同的镜像来下载我们所需要的包,比如说cnpm、taobao等,但是我们每次也不知道到底从哪个镜像下载才是最快的,所以此时我们便需要用到nrm,nrm是开发的npm registry 管理工具, 能够查看和切换当前使用的registry,综上所述,所以我们安装npm的时候应该是如下顺序:

首先安装nvm------->再安装npm------->最后安装nrm

具体步骤如下:

1.macOS和windows两个所用的不同,mac直接安装nvm,windows则需要安装nvmw或者nvm-windows,因为我安装的是nvm-windows,下载地址:https://github.com/coreybutler/nvm-windows

2.利用nvm安装node

  #nvm install 4.2.0(需要下载的版本号)或者 #nvm install(默认下载最新版本) 或者 #nvm install stable(下载稳定版本)

3.利用npm 下载nrm :  #npm install -g nrm

nvm常用命令:

  #nvm install <version>  ## 安装指定版本,可模糊安装,如:安装v4.4.0,既可nvm install v4.4.0,又可nvm install 4.4

  #nvm uninstall <version>  ## 删除已安装的指定版本,语法与install类似

  #nvm use <version>  ## 切换使用指定的版本node

  #nvm ls  ## 列出所有安装的版本

  #nvm ls-remote  ## 列出所以远程服务器的版本(官方node version list)

  #nvm current  ## 显示当前的版本

  #nvm alias <name> <version>  ## 给不同的版本号添加别名

  #nvm unalias <name>  ## 删除已定义的别名

  #nvm reinstall-packages <version>  ## 在当前版本node环境下,重新全局安装指定版本号的npm包

npm常用命令:

  #npm install gulp或者#npm install gulp@ <version>     ## 安装某插件

  #npm install gulp -g    ## 全局安装

  #npm install gulp --save-dev    ## 将安装包信息将加入到devDependencies(开发阶段的依赖)

  #npm install gulp --save    ## 将安装包信息将加入到dependencies(生产阶段的依赖)

nrm常用命令:

  #nrm ls    ## 查看所有可以用的镜像

  #nrm test    ## 测试所有镜像的服务器连接时间,可选择出哪个地址最快

  #nrm use taobao  ## 切换所用镜像(注意:切换后还是使用npm install命令,而不是taobao install)

npm、nvm、nrm的更多相关文章

  1. 第210天:node、nvm、npm和gulp的安装和使用详解

    一.node 1.什么是node? 它不是JS文件,也不是JS框架,而是Server side JavaScript runtime,当服务端的一个JS文件运行时,会被NODE拦截,在NODE中运行J ...

  2. 理解npm、nvm、nodejs之间的关系

    nvm nvm:nodeJs版本管理工具,管理nodejs版本和npm版本,使用nvm安装nodejs时会将npm一起安装下来 nodejs nodeJs: 一种高效的JavaScript运行环境 n ...

  3. Node.js入门(含NVM、NPM、NVM的安装)

    本文最初发表于博客园,并在GitHub上持续更新前端的系列文章.欢迎在GitHub上关注我,一起入门和进阶前端. 以下是正文. Node.js的介绍 引擎 引擎的特性: JS的内核即引擎.因为引擎有以 ...

  4. Node.js入门(含NVM、NPM、NVM的安装)-(转载)

    Node.js的介绍 引擎 引擎的特性: JS的内核即引擎.因为引擎有以下特性: (1)转化的作用: 汽油柴油等等->动能 模板+数据--->页面 js引擎:js 代码--->机器码 ...

  5. nvm、npm、nodejs的关系(转载)

    nvm.npm.nodejs的关系 为什么要了解nvm.npm.nodejs的关系: reactNative的项目构建都是有这几个工具进行构建管理. 掌握他们的关系,就能了解reactNative项目 ...

  6. 前端自动化准备和详细配置(NVM、NPM/CNPM、NodeJs、NRM、WebPack、Gulp/Grunt、Git/SVN)

    一. 各类概念和指令介绍 1. NVM (1).  全称:Node Version Manager,是一款针对Nodejs的版本管理工具,由于Node的版本很多,很多时候我要需要依赖多个版本,并且要求 ...

  7. Ext JS学习第十六天 事件机制event(一) DotNet进阶系列(持续更新) 第一节:.Net版基于WebSocket的聊天室样例 第十五节:深入理解async和await的作用及各种适用场景和用法 第十五节:深入理解async和await的作用及各种适用场景和用法 前端自动化准备和详细配置(NVM、NPM/CNPM、NodeJs、NRM、WebPack、Gulp/Grunt、G

    code&monkey   Ext JS学习第十六天 事件机制event(一) 此文用来记录学习笔记: 休息了好几天,从今天开始继续保持更新,鞭策自己学习 今天我们来说一说什么是事件,对于事件 ...

  8. nvm、nrm、npm 安装和使用详解

    一.nvm的安装和使用   nvm全称Node Version Manager是 Nodejs 版本管理器,它让我们能方便的对 Nodejs 的版 本进行切换. nvm 的官方版本只支持 Linux ...

  9. 【NodeJS】nvm、npm、node安装、使用、淘宝源设置等资料

    NodeJS-安装使用淘宝源 管理 node 版本,选择 nvm 还是 n? - WEB前端 - 伯乐在线 creationix/nvm: Node Version Manager - Simple ...

随机推荐

  1. Spring初学之xml实现AOP前置通知、后置通知、返回通知、异常通知等

    实现两个整数的加减乘除,在每个方法执行前后打印日志. ArithmeticCalculator.java: package spring.aop.impl.xml; public interface ...

  2. Spring AOP的一个比喻和IOC的作用

    aop切面编程就是在常规的执行java类中方法前或执行后加入自定义的方法.比如你本来每天都去打酱油,去,打酱油,回.现在我每天在你打酱油路上等着,你去打酱油的时候我打你一顿,回来的时候给你点糖果吃.你 ...

  3. 用intellij idea 写第一个Java程序

    Java小白,还不怎么会eclipse,只会在命令行用javac编译并java运行编译后的类. 英文还不好orz 发现创建项目后,能build但就是不能run... 找了半天教程没找着,去官网溜了一下 ...

  4. SVG_style_script

    1. <style type="text/css"> <![CDATA[ // ZC: 禁止所有 <text/>元素的选中 text { -webki ...

  5. SpringBoot- springboot集成Redis出现报错:No qualifying bean of type 'org.springframework.data.redis.connection.RedisConnectionFactory'

    Springboot将accessToke写入Redisk 缓存,springboot集成Redis出现报错 No qualifying bean of type 'org.springframewo ...

  6. python中常用的文件和目录操作(一)

    常用的文件操作 1. 打开文件 open,它是一个内置函数,可以直接调用 语法:file object = open(file_name, [access_mode]),这里我们会创建一个file对象 ...

  7. hdu3157有源汇上下界最小流

    题意:有源汇上下界最小流裸题,主要就是输入要用字符串的问题 #include<bits/stdc++.h> #define fi first #define se second #defi ...

  8. 关于使用java开发Mis系统的相关内容。

    怎样使用java编程语言开发一个小型的信息管理系统,首先我们要知道用什么样的方法来开发这一系统. 1.java简单基础知识: (1)Java的三种技术架构: 1)JAVAEE:Java Platfor ...

  9. hdu 5237 Base64(模拟)

    Base64 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Subm ...

  10. IIS 高并发的相关配置

    前言: 随着业务量的增加,服务器流量的增长增长了好多,高峰期会出现 503 的错误,IIS 对请求数的配置默认是 1000,无法满足现状的需求: 需要收集性能数据如下: 1.Windows性能监视器, ...