用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

平常推送英语精读,算法题,前端知识~

相关文章
相关标签/搜索