macOS安装nodeJs

本文源于安装nodeJs后安装模块出现无写入权限,针对这一问题记录如下

🚮卸载node

从官网下载的pkg安装包安装的卸载(删除)方法

1
sudo rm -rf /usr/local/{bin/{node,npm},lib/node_modules/npm,lib/node,share/man/*/node.*}

通过homebrew安装的卸载(删除)方法

1
brew uninstall node

🍔安装新的nodeJs

1.从官网下载pkg格式的node安装包

​ 我的建议:不要用最新的,我个人是一个喜欢更新软件的人,几次翻车的经历,劝诫大家安装相对早2-3个版本的最后一个版本,比如:最新版本17.3.0,安装15.14.0或者14.18.2,其实14.18.2更新的时间还是很新的,所以其实也更稳定一些

2.安装完第一步:换源

1⃣️设置淘宝镜像源

1
npm config set registry https://registry.npm.taobao.org

2⃣️确认使用的镜像源

1
npm config get registry

3.权限问题处理

官方解决办法:点此查看,有兴趣的小伙伴可以去看看,我直接把方法放到下边来

处理办法

打开终端:目录为home,在终端显示为liuming@ioBook ~ % 即为home

图示:

image-20211228095246366

 1⃣️创建全局目录

1
mkdir ~/.npm-global

 2⃣️配置npm使用新路径

1
npm config set prefix '~/.npm-global'

如果你安装了oh-my-zsh,此处可直接参考末尾

 3⃣️打开或创建一个~/.profile文件,创建命令:

1
touch ~/.profile

​ 打开这个文件命令:

1
open -t ~/.profile

​ 在文件内添加以下代码:

1
export PATH=~/.npm-global/bin:$PATH

 4⃣️在命令行上,更新系统变量

1
source ~/.profile

 5⃣️测试新配置是否生效,不用sudo全局下载安装包

1
npm i @vue/cli -g
1
vue -V

❕:如果不想使用 2-4步骤(例如,你不想创建修改~/.profile),还可以使用相应的环境变量来实现

1
NPM_CONFIG_PREFIX=~/.npm-global

npx:运行全局命令的替代方法

如果您使用的是 npm 版本 5.2 或更高版本,则可能需要将npx视为运行全局命令的替代方法,尤其是在您偶尔只需要命令的情况下。有关详细信息,请参阅这篇关于 npx 的文章

末尾

如果安装了oh-my-zsh,那么终端会默认使用 .zshrc 配置文件,所以做以下操作:

1
export PATH=~/.npm-global/bin:$PATH

将以上代码加入到.zshrc文件第 3 行即可,用于指定$PATH路径

此时应该就大功告成了

测试一下:

1⃣️在命令行上,更新系统变量:

1
source ~/.profile

2⃣️测试新配置是否生效,不用sudo全局下载安装包:

1
npm i @vue/cli -g
1
vue -V

如果还是不行,试试这个:

终端输入命令:npm root -gnpm bin -g,会得到两个路径:

拿到两个路径之后:(’’ : ‘’ 后边路径要更改成你得到的路径)

1
2
3
export PATH=~/.npm-global/bin:$PATH
export PATH=$PATH:/Users/liuming/.npm-global/lib/node_modules
export PATH=$PATH:/Users/liuming/.npm-global/bin

如上三行加入到.zshrc文件3-5行即可:

然后运行source ~/.zshrc,使其生效

大功告成

另外可以使用nnvm模块来管理node版本,可以参考这篇文章

🍟n模块升级node版本(Mac)

1⃣️清除npm缓存,执行:

1
npm cache clean -f

2⃣️安装n模块,执行:

1
npm i n -g

3⃣️更新node版本,执行:

1
2
3
4
n stable // 把当前系统的 Node 更新成最新的 “稳定版本”
n lts // 把当前系统的 Node 更新成 "长期支持版"
n latest // 把当前系统的 Node 更新成 "最新版"
n 14.19.0 // 把当前系统的 Node 更新到 指定版本

如果有提示权限问题,执行:sudo n 14.19.0,输入密码,按回车即可进入更新

4⃣️查看安装的node版本,执行:

1
node -v
更新于

请我喝[茶]~( ̄▽ ̄)~*

Ming Liu 微信支付

微信支付

Ming Liu 支付宝

支付宝

Ming Liu 贝宝

贝宝