Node.js的环境安装配置(使用nvm方式)


Posted in Javascript onOctober 11, 2016

前言

神奇的node.js为我们JavaScript提供了在后端运行的环境,而它的包管理器npm(node package manage)现在也成为了全球最大的开源库生态系统.我们有很多很多的工具都是依赖于node环境进行使用的,所以我们使用node的第一步,就是配置node.js环境.

那么配置node.js环境,当然,我们可以直接从官网下载,然后安装到电脑上就行了,当然,这是正确的,但是如果有一天我们需要使用新版本的node.js,或者使用旧版本的node.js时,我们还是需要去官网下载,然后安装,因为node.js的官方对于node.js的版本更新较慢,以至于一些大神等得不耐烦了,便开始自己更新node.js(当然node.js是开源的),你这一更新,导致官方团队坐不住了,那最后的结果就是官方的是稳定版本,当有新功能会在这个版本较高的发布,所以这就是经常会看到

Node.js的环境安装配置(使用nvm方式)

如果你想长期做 node 开发, 或者想快速更新 node 版本, 或者想快速切换 node 版本,

那么在非 Windows(如 osx, linux) 环境下, 请使用 nvm 来安装你的 node 开发环境, 保持系统的干净.

如果你使用 Windows 做开发, 那么你可以使用 nvmw 来替代 nvm

使用nvm之前,我们先来看一下,我们使用终端打开应用程序的实例:我们使用终端开启一个软件是,必须要cd到这个程序当前所在的文件目录下,

Node.js的环境安装配置(使用nvm方式)

我们可以看到,当前的FlashFXP的链接存在于桌面的上,当我们在桌面中的node.js文件夹中去试图打开它是打不开的,因为我们终端在当前文件夹中找不到FlashFXP的启动程序,所以会报错,那么我们有没有办法去改变这一现象,可以在任何地方,任何文件中启动真个程序呢?当然是可以的,我们只需要配置一下环境变量就可以了,右键我的电脑->选择属性->高级系统设置->环境变量,到了环境变量这,就找对地方了

Node.js的环境安装配置(使用nvm方式)

环境变量是系统中一个特定的对象,当要求系统运行一个程序而且没有告诉系统这个程序的完整路径的时候,系统除了在当前的文件夹下边寻找之外,还会去环境变量中path中指定的路径去寻找,也就是说,如果你将一个文件夹的指定路径保存到了path中,那么每次在终端启动程序时,你根本就不必进去这个程序所在的文件夹也能启动它了,这里我们会看到有系统变量和用户变量,顾名思义,用户变量就是当前登录用户下配置的各种变量,当我们切换用户的时候,这部分的变量是可以变化的,那么这时候我们就需要将想要添加的文件夹添加到用户变量中就行了,

FLASH= "C:\Program Files (x86)\//将当前地址复制到一个变量中,
path = %FLASH%;//将这个变量赋值到path中,这时候在任何地方我们都可以打开这个程序了

安装nvm

好了,有了上边的铺垫之后,我们就可以来安装nvm了,我们可以使用git直接下载,当然也可以直接去网上下载 

Node.js的环境安装配置(使用nvm方式)

下载图标中的nvm就行,下载完成后解压,然后安装nvm,安装目录地址注意不要有中文,不然指不定会出现什么错误,我这里直接将它安装在了D:\dev下边,安装完成后一般会去自动给我们配置好系统变量,如果没有,我们需要手动去配置系统变量,原理及方法和我们一开始所讲的一样:

NVM_HOME :指向nvm安装目录
NVM_SYMLINK:nodejs安装目录
Path :变量值中增加 NVM_HOME 和 NVM_SYMLINK两个环境变量

这时我们可以在终端中测试一下:

$ nvm -v
Running version 1.1.0.
Usage:
 nvm arch : Show if node is running in 32 or 64 bit mode.
 nvm install <version> [arch] : The version can be a node.js version or "latest" for the latest stable version.
         Optionally specify whether to install the 32 or 64 bit version (defaults to system arch).
         Set [arch] to "all" to install 32 AND 64 bit versions.
 nvm list [available]   : List the node.js installations. Type "available" at the end to see what can be installed. Aliased as ls.
 nvm on      : Enable node.js version management.
 nvm off      : Disable node.js version management.
 nvm proxy [url]    : Set a proxy to use for downloads. Leave [url] blank to see the current proxy.
         Set [url] to "none" to remove the proxy.
 nvm uninstall <version>  : The version must be a specific version.
 nvm use [version] [arch]  : Switch to use the specified version. Optionally specify 32/64bit architecture.
         nvm use <arch> will continue using the selected version, but switch to 32/64 bit mode.
 nvm root [path]    : Set the directory where nvm should store different versions of node.js.
         If <path> is not set, the current root will be displayed.
 nvm version     : Displays the current running version of nvm for Windows. Aliased as v.
 //这时就表示nvm安装成功了

安装node.js

这时候我们就可以安装node了,在终端输入命令:nvm ls-remote,用来查看远端的node版本,当然,你可能看不到结果,此时,你就需要输入另一个命令:export NVM_NODEJS_ORG_MIRROR=http:nodejs.org/dist,然后再输入nvm ls -remote

这时候使用命令nvm install [node版本号]

等到进度条走完,输入命令 nvm list 来查看当前安装的node

Node.js的环境安装配置(使用nvm方式)

node.js版本切换

可以看到当前安装的有4.3.1版本,那么我么使用 nvm use 4.3.1就可以指定当前使用的node版本为4.3.1,4.3.2后边也会出现(当前使用的标志),当然,我们可以再去下载一个node版本,例如:

Node.js的环境安装配置(使用nvm方式)

等到进度条走完,这是我们就有了5.7.0和4.3.1两个版本了:这时我们可定是想要去在两个版本之间自如的去切换的,这是我们还需要配置一个文件,就是nvm 中的setting文件:

 Node.js的环境安装配置(使用nvm方式) 

打开文件进行配置

Node.js的环境安装配置(使用nvm方式)    

如上,根据自己的文件目录进行配置,root表示的是当前nvm中内容的地址,path则是需要写入环境变量中的地址path中,会在当天dev/ 文件下生成一个nodejs快捷方式,来作为指向当前使用的node版本的快捷方式

Node.js的环境安装配置(使用nvm方式)

如图所示

当我们配置好了之后,就可以进行node版本的切换了:

Node.js的环境安装配置(使用nvm方式)

这是我们会发现dev文件中生成了一个nodejs的快捷方式,点击这个快捷方式,就可以调转到当前使用版本的nodejs中,当然,安装好了nodejs之后,node还有一个npm(node package manage),这个工具,在新版本的node中已经集成了进来,所以我们可以直接使用了,通过npm我们不仅可以下载node的各种包,我们还可以下载各种在npm生态网上的包,例如jQuery,angularJS,bootstrap,等等很多包,还包括gulp,bower,grunt等等工具。

总结

以上就是这篇文章的内容内容,大家都学会了吗?希望这篇文章的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

Javascript 相关文章推荐
javascript 传统事件模型构造的事件监听器实现代码
May 31 Javascript
现代 JavaScript 开发编程风格Idiomatic.js指南中文版
May 28 Javascript
javascript进行四舍五入方法汇总
Dec 16 Javascript
JS+CSS实现精美的二级导航效果代码
Sep 17 Javascript
ajax级联菜单实现方法实例分析
Nov 28 Javascript
jQuery.Sumoselect插件实现下拉复选框效果
Nov 09 jQuery
bootstrap实现二级下拉菜单效果
Nov 23 Javascript
jQuery实现百度图片移入移出内容提示框上下左右移动的效果
Jun 05 jQuery
JavaScript禁用右键单击优缺点分析
Jan 20 Javascript
Vue实现push数组并删除的例子
Nov 01 Javascript
Vue搭建后台系统需要注意的问题
Nov 08 Javascript
ES6中Promise的使用方法实例总结
Feb 18 Javascript
javascript 动态样式添加的简单实现
Oct 11 #Javascript
表单input项使用label同时引用Bootstrap库导致input点击效果区增大问题
Oct 11 #Javascript
javascript 动态脚本添加的简单方法
Oct 11 #Javascript
js HTML5上传示例代码完整版
Oct 10 #Javascript
JavaScript  event对象整理及详细介绍
Oct 10 #Javascript
快速解决js开发下拉框中blur与click冲突
Oct 10 #Javascript
JavaScript 闭包机制详解及实例代码
Oct 10 #Javascript
You might like
php mb_substr()函数截取中文字符串应用示例
2014/07/29 PHP
php实现的简单日志写入函数
2015/03/31 PHP
PHP图像处理类库及演示分享
2015/05/17 PHP
基于PHP实现简单的随机抽奖小程序
2016/01/05 PHP
jQuery之网页换肤实现代码
2011/04/30 Javascript
查找页面中所有类为test的结点的方法
2014/03/28 Javascript
JS 实现列表与多选框选择附预览动画
2014/10/29 Javascript
基于jQuery实现下拉框
2014/11/24 Javascript
jQuery+jRange实现滑动选取数值范围特效
2015/03/14 Javascript
javascript设计模式之对象工厂函数与构造函数详解
2015/07/30 Javascript
jQuery中bind(),live(),delegate(),on()绑定事件方法实例详解
2016/01/19 Javascript
javascript运算符——位运算符全面介绍
2016/07/14 Javascript
用瀑布流的方式在网页上插入图片的简单实现方法
2016/09/23 Javascript
Vue的Flux框架之Vuex状态管理器
2017/07/30 Javascript
JQuery中queue方法用法示例
2019/01/31 jQuery
JS重学系列之聊聊new操作符
2019/03/04 Javascript
简单通过settimeout看javascript的运行机制
2019/05/10 Javascript
JavaScript(js)处理的HTML事件、键盘事件、鼠标事件简单示例
2019/11/19 Javascript
深入解析微信小程序开发中遇到的几个小问题
2020/07/11 Javascript
适用于 Vue 的播放器组件Vue-Video-Player操作
2020/11/16 Javascript
Python脚本处理空格的方法
2016/08/08 Python
简述:我为什么选择Python而不是Matlab和R语言
2017/11/14 Python
浅析python打包工具distutils、setuptools
2018/04/20 Python
pandas通过索引进行排序的示例
2018/11/16 Python
在python3中pyqt5和mayavi不兼容问题的解决方法
2019/01/08 Python
在Python 中同一个类两个函数间变量的调用方法
2019/01/31 Python
HTML5 canvas基本绘图之文字渲染
2016/06/27 HTML / CSS
HTML5 拖放功能实现代码
2016/07/14 HTML / CSS
迪斯尼商品官方网站:ShopDisney
2016/08/01 全球购物
Snapfish英国:在线照片打印和个性化照片礼品
2017/01/13 全球购物
现金会计岗位职责
2013/12/05 职场文书
财务工作疏忽检讨书
2014/09/11 职场文书
清明祭英烈活动总结
2015/05/11 职场文书
小学英语听课心得体会
2016/01/14 职场文书
2016创先争优活动党员公开承诺书
2016/03/24 职场文书
Android中View.post和Handler.post的关系
2022/06/05 Java/Android