前言
相信对于学习Node.js的小伙伴们都知道,现在 Node 的版本更新很快,目前最新稳定版已经更新到 v7.6.0 了,而生产环境一般选择使用 LTS(Long-term Support)版本,目前最新的是 v6.10.0。
LTS本地下载:点击这里
新版的 Node 7.x.x 有非常有用的更新,那就是支持了 --harmony-async-await。这样就不用依赖 babel 来使用 async/await 特性了。
但是,如何让 7.x.x 和 LTS 的 6.x.x 并存呢?就需要用 Node 版本管理工具了。
之前常用的 Node 版本管理工具是 nvm,这是一个 shell 工具,能够比较方便地切换 Node 版本。
nvm本地下载:点击这里
不过今天我要介绍给大家的是另一款更简单好用的 Node 版本管理工具,它本身是一个 Node 模块,叫做 n,它是由 TJ 大大开发的
n 本地下载:点击这里
强调简单化的版本管理工具:
Node.js version management: no subshells, no profile setup, no convoluted API, just simple.
安装 n
要安装 n 非常简单,它本身是一个 NPM 模块,因此:
npm -g install n
使用和设置
要使用 n 安装特定版本的 node,只需要如下命令:
n stable #安装最新的稳定版 n lts #安装最新的 LTS 版 n 6.9.0 #安装特定的 v6.9.0 版本
安装完成多个版本后,直接输入不带参数的 n 命令,会出现一个已安装版本的列表:
用键盘上下键选择版本,然后回车,就可以切换默认 Node 版本。
直接启动不同版本的 Node
假如我们将默认的 Node 版本设置为 6.10.0 了,而我们要使用 7.6.0 启动某个应用,也非常简单,只需要:
n use 7.6.0 index.js
于是,我们可以这么用:
async.js
'use strict' let randomDelay = () => new Promise(function(resolve){ var delay = Math.round(Math.random() * 1000); setTimeout(function(){ console.log('delay ' + delay + ' ms'); resolve(delay); }, delay); }); async function main(){ await Promise.all([randomDelay(), randomDelay()]); console.log('pass'); await randomDelay(); } main();
n use 7.6.0 async.js
你会看到类似下面这样的输出结果,说明我们不需要 babel,直接可以用 Node 7.6.0 支持 async/await 了。
delay 252 ms delay 964 ms pass delay 536 ms
最后,我们可以创建一个快捷的命令:
echo alias node7="\"n use 7.6.0 --harmony-async-await\"" ~/.bashrc source ~/.bashrc
这样我们就可以愉快地使用 node v7.x.x 运行我们的 js 了:
node7 async.js
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对的支持。
P70系列延期,华为新旗舰将在下月发布
3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。
而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?
根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。