美兰十三的想疗院


一个不务正业的前端狗,爱纹身、玩乐队、金属党、专门写Bug~


npm i -g 全局安装 sudo 消除

2020-07-06更新

https://docs.npmjs.com/resolving-eacces-permissions-errors-when-installing-packages-globally
NPM官方给的建议和解决办法

这份文档里提出了两个方案

以上两种方案看个人喜好吧

======= 分割线 =======

Part One

现今的前端开发中 我们经常会用到 npm
然而有些包我们必须全局安装,比如 @vue/cli create-react-app 等等

但是经常会有人遇到全局安装 权限不足的问题(permission denied)(因为大多数人的 npm 安装目录是在 /usr/local/bin 下)
虽然我们可以 是用 sudo 来解决 npm i -g的权限问题,但之后会产生一系列其他的权限问题,简直是后患无穷

所以 建议 在 终端中修改 node_modules 的权限

$ sudo chown -R $(whoami) ~/.npm
$ sudo chown -R $(whoami) $(npm config get prefix)/{lib/node_modules,bin,share}

Part Two

我们是用 @vue/cli 或者其他类似的教授教 创建项目的时候有一定概率遇到权限问题
例如

$ vue ui
Error: EACCES: permission denied, open '/Users/xxx/.vue-cli-ui/db.json'

我们依然可以使用 sudo 但是。。。之后你会哭的
为什么?
因为 使用 sudo vue ui 之后 创建项目 你会发现创建好的项目文件 全都有一个小锁的角标,你根本无权编辑!
这种时候 我们就如同 Part One 中的那样处理

$ sudo chown -R $USER:$GROUP ~/.npm
# 修改权限不足的文件夹权限
$ sudo chown -R $USER:$GROUP ~/.vue-cli-ui

Have Fun~

精彩!

建议打赏金额1-10元

支付宝打赏

微信打赏

最近的文章

推荐几个Touch Bar的扩展应用

Long Time No See & お久しぶりです Touch Bar 作为一个效率工具,已经很出色了,但是可以更出色一点 所以 我就来推荐一下了 1、BTT(Better Touch…

继续阅读
更早的文章

MacOS 升级git

系统自带的git 版本一般会比较的老 比如我的macbook pro macOS Mojave 10.14.5 的git版本是 2.12 于是在日常开发中会遇到一个问题 想用 husky 等…

git, Mac, HOMEBREW 继续阅读
沪ICP备15043964号-3