关于node.js和npm 和nvm
Node 是一个服务器端 JavaScript 解释器,Node 本身运行 V8 JavaScript。V8 JavaScript 引擎是 Google 用于其 Chrome 浏览器的底层 JavaScript 引擎。
-
NPM是随同NodeJS一起安装的包管理工具,能解决NodeJS代码部署上的很多问题,常见的使用场景有以下几种:
允许用户从NPM服务器下载别人编写的第三方包到本地使用。
允许用户从NPM服务器下载并安装别人编写的命令行程序到本地使用。
允许用户将自己编写的包或命令行程序上传到NPM服务器供别人使用。
由于新版的nodejs已经集成了npm,所以之前npm也一并安装好了。
nvm有点类似于 Python 的 virtualenv 或者 Ruby 的 rvm,php的composer,每个node版本的模块都会被安装在各自版本的沙箱里面(因此切换版本后模块需重新安装),因此考虑到需要时常对node版本进行切换测试兼容性和一些模块对node版本的限制,对于node版本管理很方便
安装node.js和npm
第一种:直接安装方式
https://nodejs.org/
下载安装包,osx下是一个pkg文件。
安装成功提示:
Node.js was installed at
/usr/local/bin/node
npm was installed at
/usr/local/bin/npm
Make sure that /usr/local/bin is in your $PATH.
这样的话就不需要去刻意写PATH,默认
/usr/local/bin/
,在osx的PATH中,如果没有的话,那么需要手动添加一个export PATH=/usr/local/bin:$PATH
到~/.bash_profile
里面
安装成功后,打开终端
➜ git node -v
v4.6.0
➜ git npm -v
2.15.9
至此安装完成
第二种:使用nvm安装
将nvm的git 库clone到本地
$ cd ~/git
$ git clone https://github.com/creationix/nvm.git
//在本地创建一个存放git的目录,然后git clone下到本地
source ~/git/nvm/nvm.sh
//source这个脚本来初始化nvm的环境
备注:
在 ~/.bashrc, ~/.bash_profile, ~/.profile, 或者 ~/.zshrc 文件添加以下命令:
source ~/git/nvm/nvm.sh
nvm 默认是从 http://nodejs.org/dist/ 下载的, 国外服务器, 必然很慢,我们可以更换国内的镜像:
➜ git NVM_NODEJS_ORG_MIRROR=https://npm.taobao.org/mirrors/node nvm install 4
VERSION_PATH=''
######################################################################## 100.0%
Computing checksum with shasum -a 256
Checksums matched!
Now using node v4.6.0 (npm v2.15.9)
Creating default alias: default -> 4 (-> v4.6.0)
写在profile文件,自动加载,不用每次手动操作
cat ~/.bash_profile
source ~/git/nvm/nvm.sh
export NVM_NODEJS_ORG_MIRROR=https://npm.taobao.org/mirrors/node
(这个也是需要将其写进去profile文件的(~/.bashrc, ~/.bash_profile, ~/.profile, 或者 ~/.zshrc ,其中一个即可
))
安装完成后检查,第一次安装nvm完成的时候会自动安装一个最新版的node.js
➜ git nvm ls
-> v4.6.0
system
default -> 4 (-> v4.6.0)
node -> stable (-> v4.6.0) (default)
stable -> 4.6 (-> v4.6.0) (default)
iojs -> N/A (default)
lts/* -> lts/argon (-> v4.6.0)
lts/argon -> v4.6.0
使用npm和nvm
npm使用
同理 nvm , npm 默认是从国外的源获取和下载包信息,所以很慢,可以通过简单的 ---registry 参数, 使用国内的镜像https://registry.npm.taobao.org
npm config set registry https://registry.npm.taobao.org/
npm install -g hexo //例如我这里安装一个hexo模块
也可以
npm --registry=https://registry.npm.taobao.org install -g hexo
备注:
npm的-g参数是安装全局模块
由于淘宝已经停止了http的镜像服务,安装的时候,需要把
npm config set registry https://registry.npm.taobao.org
设置成https。
通过 nvm 安装任意版本的 node
如例子所示,nvm use可以切换node版本:
Example:
nvm install v0.10.32 Install a specific version number
nvm use 0.10 Use the latest available 0.10.x release
nvm run 0.10.32 app.js Run app.js using node v0.10.32
nvm exec 0.10.32 node app.js Run `node app.js` with the PATH pointing to node v0.10.32
nvm alias default 0.10.32 Set default node version on a shell
参考:
https://cnodejs.org/topic/5338c5db7cbade005b023c98
http://www.eyrefree.org/2016/03/23/2016-03-23-Hexo-Coding-Pages/
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。