在macOS
系統下,npm默認的全局安裝路徑是在/usr/local/lib/node_modules
下。例如:當咱們執行npm i -g vue-cli
時,其實是把vue-cli
這個模塊安裝到了/usr/local/lib/node_modules
目錄下了。vue
⚠️注意: /usr/local/lib
這個是系統目錄,會有權限問題,雖然可使用sudo
執行,可是仍是有部分機器,即便使用root
用戶執行npm i -g xxx
全局安裝某個模塊仍是會出現EACCES permissions
權限被拒絕問題。node
🚀解決辦法: 經過修改npm全局安裝模塊的路徑解決,將npm全局安裝模塊的路徑,修改到當前登錄用戶的HOME
目錄下便可,這樣用不用sudo
都不會出現EACCES permissions
權限被拒絕問題了。vue-cli
⚠️️注意:本教程不適合Windows系統shell
npm config ls
mkdir ~/.npm-global
npm config set prefix '~/.npm-global'
vim ~/.bash_profile //編輯.bash_profile文件,這個文件是用戶登錄終端的時候會自動執行的文件
export PATH=~/.npm-global/bin:$PATH
source ~/.bash_profile
npm install -g jshint
能夠看到此後全局安裝的模塊都被安裝到了/Users/jameswain/.npm-global
目錄下了npm
其實解決全局安裝模塊權限不足問題的方法:主要是將npm全局安裝模塊的目錄修改到了用戶的主目錄下,這樣用戶不須要sodu也可以全局安裝模塊,由於它是在本身的主目錄下操做,永遠不會存在權限問題。vim