用nvm來管理node

想裝個開發react的環境,本機上以前已經安裝了node,直接npm發現各類問題,什麼權限啦,更新啦,真是太抓瞎了。。前端

緣由在於,我以前是直接從node官網下載的。node

在官網下載的 node 安裝包,運行後會自動安裝在全局目錄,使用過程當中常常會遇到一些權限問題react

Node.js安裝過程將npm安裝在僅具備本地權限的目錄中。 當您嘗試全局運行包時,這可能會致使權限錯誤。(npm官網翻譯)git

怎麼解決這個問題呢?github

如下來自npm官網:算法

爲了解決這兩個問題,許多開發人員選擇使用節點版本管理器(nvm)來安裝npm。 版本管理器將避免權限錯誤,而且將解決更新Node.js和npm的複雜性。npm

另外,開發人員可使用nvm在npm的多個版本上測試他們的應用程序。 nvm使您能夠輕鬆切換npm以及節點版本。segmentfault

先清除餘孽

由上可知,咱們須要安裝nvm,在安裝以前,咱們最好把以前已經安裝的node.js清除掉。bash

首先,打開你 Finder,按 shift+command+G,打開前往文件夾的窗口,分別輸入下列目錄進去以後刪除 nodenode_modules 相關的文件和文件夾:app

  • 打開 /usr/local/lib,刪除 nodenode_modules 相關的文件和文件夾;

  • 打開 /usr/local/include,刪除 nodenode_modules 相關的文件和文件夾;

  • 若是你是使用的 brew install node 安裝的 NodeJS,那麼你還須要在終端中執行 brew uninstall node 命令來卸載;

  • 檢查你的我的主文件夾下面的全部的 locallib 以及 include 文件夾,而且刪除全部與 nodenode_modules 相關的文件以及文件夾;

  • 打開 /usr/local/bin 並刪除 node 可執行文件。

此外,在終端進行一些額外操做:

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複製代碼

nvm

接下里就能夠安裝nvm啦~

參考nvm的官網安裝教程,個人安裝步驟是:

1. 打開終端

2. 使用cURL:

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.9/install.sh | bash複製代碼

3.

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm複製代碼

4.

command -v nvm複製代碼

這個時候terminal應該會輸入nvm表示已經安裝成功啦。

若是沒有輸入上面這行命令之後,沒有反應,或者輸出nvm: command not found。

官方給出的解決方法是:

  • your system may not have a [.bash_profile file] where the command is set up. Simply create one with touch ~/.bash_profile and run the install script again

  • you might need to restart your terminal instance. Try opening a new tab/window in your terminal and retry.

我就是出現了第一條的問題,輸入touch touch ~/.bash_profile,再從新執行一遍安裝流程就好啦~

5. 安裝node的淘寶鏡像,加快下載速度

export NVM_NODEJS_ORG_MIRROR=https://npm.taobao.org/mirrors/node複製代碼

6. node的安裝

nvm install node複製代碼

會直接安裝最新版本的node,更多nvm的操做能夠看官網文檔~

7. 安裝npm的淘寶鏡像

npm config set registry https://registry.npm.taobao.org複製代碼

最終目的

愉快的敲出react官網給出的安裝命令!

npm install -g create-react-app
create-react-app my-app
​
cd my-app
npm start複製代碼

成功get!

參考連接


Last

歡迎你們關注公糉號:CSandCatti

平常推送英語精讀,算法題,前端知識~

相關文章
相關標籤/搜索