美兰十三的想疗院


一个不务正业的前端狗,爱纹身、玩乐队、哥金党、专门写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 继续阅读
comments powered by Disqus
沪ICP备15043964号-3