去年年末發佈的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
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後,而後按照Github
上nvm
安裝文檔一步一步安裝就行了。有了nvm
你就能夠爲所欲爲的安裝,切換你想要任何版本的node
了。
哈哈,隨便切換node
版本,感受真棒。babel
通過這件事,我在思考,其實我很早就知道了會有遇到
node
版本這個問題。可是怕麻煩就沒有理會,總感受不必定會遇到,可是真到遇到了,仍是要解決的。平時寫代碼也是同樣的,考慮全面再去實現代碼,哪些模塊須要封裝,都要考慮好,並實現。不能由於麻煩就不去作,當你最終遇到本身留下的坑的時候,仍是要本身去填的。每每填坑的同時會帶來更大的痛苦。函數