从parcel.js打包出错,到选择nvm

去年年末发布的parcel.js在年末可谓是火了一把,短短一个多月的时间在GitHub热门排行榜上名列前茅。因其几乎零配置的易用性,相比Webpack的复杂配置收获了大量关注及好评,甚至有人预言将来大有超过Webpack之趋。我也赶忙尝试一下,发现确实很是简单易用,可是一开始,插件仍是比较少,相信将来会愈来愈成熟好用。之后若是有机会我会专门写一篇关于parcel.js的文章,说了那么多废话,其实接下来我要说的是nvm(2333...)node

遇到问题

我在使用parcel.js打包项目的时候出现了下面的错误:

我在仔细检查完代码而且核实项目配置没有问题后,没办法只能求助万能的Google,结果在GitHub上找到了错误的缘由,parcel.js使用了Async 函数,默认Node.js 8以上才支持的,低于8的话须要使用babel配置。我查看了一下本身的Node.js版本,以下:

找到问题缘由后,我想升级一下node不就解决问题了。但又一想,公司最近在作的项目有用到node,贸然升级项目报错就麻烦了。这时候,我想到了nvm,其实很早以前就看过,当时以为电脑已经安装了node环境了,卸载从新安装费事就没有用它。可是如今须要用新版本的node才能够用parcel.js,我决定卸载node,从新用nvm安装,管理node版本。
首先我遇到的问题就是mac下如何完全卸载node呢,由于当时使用Homebrew安装的,感受直接卸载,应该不完全。因而我上网查了不少文档,亲身实践以下:npm

Mac os下完全卸载node

1.删除/usr/local/lib中的全部node和node_modules
2.删除/usr/local/lib中的全部node和node_modules的文件夹
3.若是是从brew安装的, 运行brew uninstall node
4.检查~/中全部的local, lib或者include文件夹, 删除里面全部node和node_modules
5.在/usr/local/bin中, 删除全部node的可执行文件
6.最后运行如下代码:
sudo rm /usr/local/bin/npm
sudo rm /usr/local/share/man/man1/node.1
sudo rm /usr/local/lib/dtrace/node.d
sudo rm -rf ~/.npm
sudo rm -rf ~/.node-gyp
sudo rm /opt/local/bin/node
sudo rm /opt/local/include/node
sudo rm -rf /opt/local/lib/node_modules
(感谢知乎@haochuan)

完全卸载完node后,而后按照Githubnvm安装文档一步一步安装就行了。有了nvm你就能够为所欲为的安装,切换你想要任何版本的node了。

哈哈,随便切换node版本,感受真棒。babel

通过这件事,我在思考,其实我很早就知道了会有遇到node版本这个问题。可是怕麻烦就没有理会,总感受不必定会遇到,可是真到遇到了,仍是要解决的。平时写代码也是同样的,考虑全面再去实现代码,哪些模块须要封装,都要考虑好,并实现。不能由于麻烦就不去作,当你最终遇到本身留下的坑的时候,仍是要本身去填的。每每填坑的同时会带来更大的痛苦。函数

相关文章
相关标签/搜索