Node.js学习记录(一)--安装设置篇
安装Node
window
window上安装node可选择以下两种方式:
方式一:直接进入官网下载安装
进入node.js官网点击windows,选择.msi后缀的,根据自己的电脑选择对应的64位或32位后,就会自动开始下载到本地。
安装过程也是直接下一步的简单式安装,这种安装优点是安装很便捷,缺点是只能装一个固定的node版本,对于需要在不同版本下开发的同学就不合适了。
方式二:通过nvm安装管理多个版本node
1、下载 nvm 包 地址:https://github.com/coreybutler/nvm-windows/releases,我们选择第一个:nvm-noinstall.zip 下载完成后解压到一个地方,比如:D:\Program Files\nvm 里面的文件列表是这样的:elevate.cmd、elevate.vbs、install.cmd、LICENSE、nvm.exe
2、双击 install.cmd 然后会让你输入”压缩文件解压或拷贝到的一个绝对路径” 先不用管它,直接回车,成功后,会生成一个settings.txt的文本文件,把这个文件另存到D:\Program Files\nvm目录中,然后我们把它的内容修改成这样:
root: D:\Program Files\nvm
path: D:\Program Files\nodejs
arch: 64 //改为自己的电脑的系统位数
proxy: none
node_mirror: http://npm.taobao.org/mirrors/node/
npm_mirror: https://npm.taobao.org/mirrors/npm/
3、然后我们开始配置环境变量了,因为刚刚点击了install.cmd的文件,那么会在环境变量的系统变量中,生成两个环境变量:NVM_HOME 和 NVM_SYMLINK 我们开始修改这两个变量名的变量值:NVM_HOME的变量值为:D:\Program Files\nvm ; NVM_SYMLINK的变量值为:D:\Program Files\nodejs
4、在Path中也会自动添加上D:\Program Files\nvm ;或者是D:\Program Files\nodejs,如果有的话,把他们删掉,没有的话更好,我们自己来配置,在Path的最前面输入: ;%NVM_HOME%;%NVM_SYMLINK%;
打开一个cmd窗口输入命令:nvm v ,那么我们会看到当前nvm的版本信息。然后我们可以安装nodejs了。
nvm install v8.9.0 //安装8.9.0版本nodejs
nvm use v8.9.0 //当前命令行窗口切换nodejs到v8.9.0
nvm switch v8.9.0 //切换到8.9.0版本为默认使用版本
nvm list //显示本地已安装的nodejs版本
nvm list available//显示可安装的nodejs版本
nvm arch //查看nodejs运行为32位还是64位
nvm off //关闭nvm
nvm on //开启nvm
nvm version //nvm版本
nvm root c://nodePath //设置不同版本nodejs安装的根路径
nvm uninstall v8.9.0 卸载nodejs v8.9.0
linux
这里通过nvm安装node
下载并安装nvm
curl https://raw.githubusercontent.com/creationix/nvm/v0.13.1/install.sh | bash
或者
wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
然后
source ~/.bash_profile
通过命令 nvm --version 可查看版本,说明安装成功
通过 nvm ls-remote 可查看node所有版本
通过 nvm install (版本号) 例如:nvm install v10.6.0
安装后可通过node -v ,npm -v 查看版本
查看已安装的版本 nvm list
切换版本 nvm use v0.10.30
设置默认版本 nvm alias default v0.10.30
mac
mac可通过n来管理node的版本
n 输出当前已经安装的node版本以及正在使用的版本(前面有一个o),你可以通过移动上下方向键来选择要使用的版本,最后按回车生效
n 9.8.0 安装9.8.0版本
n ls 查看可用的Node版本
n latest 安装最新的版本
n stable 安装稳定的版本
n rm 0.10.1 删除某个版本
Node npm常用配置
修改下载仓库为淘宝镜像
针对国内用户下载某些依赖包时耗时很长的情况,可以将下载仓库设置为淘宝镜像
npm config set registry http://registry.npm.taobao.org/
但是如果要发布自己的npm模块则需要修改回来
npm config set registry https://registry.npmjs.org/
发布自己的npm模块
- 注册一个npm账号
前往NPM官网进行注册 - 创建一个简单的包
在本地创建一个项目文件夹jesse_demo (名字自己取,不要和NPM上已有的包名重复冲突就好)
进入项目文件夹创建package.json文件
cd jesse_demo
npm init
按要求填写号相关信息 - 开始发布
如果是第一次发布包,执行以下命令,然后输入前面注册好的NPM账号,密码和邮箱,将提示创建成功
npm adduser
如果不是第一次发布,执行
npm login
进入项目文件夹,执行
npm publish
即可发布自己的npm模块文件
如果模块需要更新,也是使用npm publish发布
查看全局安装包
npm ls --depth=0 -g
查看npm配置信息
npm config list
npm依赖包版本号区别
"dependencies": {
"body-parser": "^1.13.2",
"cookie-parser": "~1.3.5",
"ejs": "*",
"express": "~4.13.x",
}
~x.y.z: 匹配大于 x.y.z 的 z 的最新版
^x.y.z: 匹配大于 x.y.z 的 y.z 的最新版
当 x 为 0 时,^x.y.z 等价于 ~x.y.z,即只会安装z 的最新版本;
当 x 和 y 为 0 时,^x.y.z 等价于 x.y.z,即只会安装x.y.z 版本;
~ 会匹配最近的小版本依赖包
^ 会匹配最新的大版本依赖包
如何调试nodejs
调试nodejs有多种方式,这里推荐使用vscode编辑器自带的调试器,使用很方便
首先需要将项目顶级文件夹添加进vscode的工作区
直接按F5进入调试模式,在代码行号左侧添加断点,刷新浏览器即可在断点处停下调试

还可以监视变量,通过添加表达式,监视表达式在代码运行时的变化
Node.js学习记录(一)--安装设置篇的更多相关文章
- Node.js 学习笔记 (一) 安装配置
Node.js 安装配置 本安装教程以Node.js v4.4.3 LTS(长期支持版本)版本为例 Window 上安装Node.js 你可以采用以下两种方式来安装. 1.Windows 安装包(.m ...
- Node.js学习记录
一.NPM 使用介绍 NPM是随同NodeJS一起安装的包管理工具,能解决NodeJS代码部署上的很多问题,常见的使用场景有以下几种: 允许用户从NPM服务器下载别人编写的第三方包到本地使用. 允许用 ...
- Node.js 学习(一) 安装配置
Windowv 上安装Node.js Windows 安装包(.msi) : 32 位安装包下载地址 : http://nodejs.org/dist/v0.10.26/node-v0.10.26-x ...
- Node.js学习笔记2(安装和配置Node.js)
1.安装 windows下安装,在http://nodejs.org下载安装包进行安装即可. linux下安装,使用yum或者下载源码进行编译. ...
- 我的three.js学习记录(三)
此次的亮点不是three.js的3d部分,而是通过调用摄像头然后通过摄像头的图像变化进行简单的判断后进行一些操作.上篇中我通过简单的示例分析来学习three.js,这次是通过上一篇的一些代码来与摄像头 ...
- Node.js学习笔记(3):NPM简明教程
Node.js学习笔记(3):NPM简明教程 NPM常用操作 更新NPM版本 npm install npm -g -g,表示全局安装.我们可以指定更新版本,只需要在后面填上@版本号即可,也可以输入@ ...
- node.js操作数据库之MongoDB+mongoose篇
前言 node.js的出现,使得用前端语法(javascript)开发后台服务成为可能,越来越多的前端因此因此接触后端,甚至转向全栈发展.后端开发少不了数据库的操作.MongoDB是一个基于分布式文件 ...
- Node.js学习系列总索引
Node.js学习系列也积累了一些了,建个总索引方便相互交流学习,后面会持续更新^_^! 尽量写些和实战相关的,不讲太多大道理... Node.js学习笔记系列总索引 Nodejs学习笔记(一)--- ...
- 【入门必备】最佳的 Node.js 学习教程和资料书籍
Web 开发人员对 Node.js 的关注日益增多,更多的公司和开发者开始尝试使用 Node.js 来实现一些对实时性要求高,I/O密集型的业务.这篇文章中,我们整理了一批优秀的资源,你可以得到所有你 ...
随机推荐
- XMPP大杂烩
XMPP大杂烩 对XMPP的理解 XMPP是基于XML的即时通讯协议.对即时通讯场景进行了高度抽象,比如用订阅对方的上下线状态表示好友.提供了文本通讯.用户上下线通知.联系人管理.群组聊天等功能,还可 ...
- 一些不常用但又很有用的css小tips
1.box-sizing:border-box box-sizing有三个属性:content-box(默认值) || border-box || inhreit.第一个自然不用说,比如我们设置一个d ...
- HDU 1006 Digital Roots
Problem Description The digital root of a positive integer is found by summing the digits of the int ...
- Python快速学习05:面向对象
系列文章:[传送门] Python对象是Python语言的核心部分.Python使用类(class)和对象(object),进行面向对象(object-oriented programming,简称O ...
- 谈谈 Redux 与 Mobx 思想的适用场景
谈谈 Redux 与 Mobx 思想的适用场景 Redux 和 Mobx 都是当下比较火热的数据流模型,一个背靠函数式,似乎成为了开源界标配,一个基于面向对象,低调的前行. 函数式 vs 面向对象 首 ...
- Perl:undef类型和defined()函数
undef和defined()函数 undef表示的像是数据库中的"null".它表示空,啥也没有,是完全未定义的.这不等于字符串的空,不等于数值0,它是另一种类型. 在某些时候, ...
- SpringBoot学习(五)-->SpringBoot的核心
SpringBoot的核心 1.入口类和@SpringBootApplication Spring Boot的项目一般都会有*Application的入口类,入口类中会有main方法,这是一个标准的J ...
- 跨域 webpack + vue-cil 中 proxyTable 处理跨域
博客地址:https://ainyi.com/27 跨域 了解同源政策:所谓"同源"指的是"三个相同". 协议相同 域名相同 端口相同 解决跨域 jsonp 缺 ...
- surging+CentOS7+docker+rancher2.0 入门部署教程
准备工作 开发环境 Visual Studio 2017 15.5 运行环境 虚拟机CentOS 7+Docker+Rancher 2.0+Consul+RabbmitMQ 项目下载地址 htt ...
- Object类型转换成自定义类型(向下转型)
Object类型转换成自定义类型 场景: 从数据库或者别的途径接收对象的时候用Object,但是用的时候怎么object点(方法提示 | alt+'/'),都点不出自定义类型的方法. 比如,数据库查询 ...