1 回答

TA貢獻(xiàn)1815條經(jīng)驗(yàn) 獲得超6個贊
npm install --global xxx 屬于全局安裝
npm install xxx 屬于本地安裝
1、全局路徑
Windows下的Nodejs npm路徑是appdata
cmd下執(zhí)行以下命令
npm config set cache "D:\nodejs\node_cache"
npm config set prefix "D:\nodejs\node_global"
如果無效
在nodejs的安裝目錄中找到node_modules\npm\.npmrc文件
修改如下即可:
prefix = D:\nodejs\node_global
cache = D:\nodejs\node_global
[重要]環(huán)境變量配置:在環(huán)境變量path追加:D:\nodejs\node_global;
2、本地路徑(項目級)
NODE_PATH 是干什么的呢?
操作系統(tǒng)中都會有一個PATH環(huán)境變量,想必大家都知道,當(dāng)系統(tǒng)調(diào)用一個命令的時候,就會在PATH變量中注冊的路徑中尋找,如果注冊的路徑中有就調(diào)用,否則就提示命令沒找到。
那 NODE_PATH 就是NODE中用來尋找模塊所提供的路徑注冊環(huán)境變量
[加載機(jī)制]
NODE_PATH中的路徑被遍歷是發(fā)生在從項目的根位置遞歸搜尋 node_modules 目錄,直到文件系統(tǒng)根目錄的 node_modules,如果還沒有查找到指定模塊的話,就會去 NODE_PATH中注冊的路徑中查找。
這樣,我們的項目就可以共享node_modules的依賴包。
差異性的解決方法
如果 項目A 使用了,express的3.x版本,項目B 使用了 express的4.x版本,那這種情況該怎么辦呢?
可以將 NODE_PATH 指定的位置中存放 express的4.x版本,再將 項目B的 node_modules 目錄中放置 3.x 版本。
這樣就解決了模塊版本差異性問題。
問題
在使用 --global 參數(shù)的時候 --save 或 --save-dev參數(shù)是無效的。
這樣就帶來一個問題。此時 package.json 中的 dependencies, devDependencies 將無法享受到npm自動更新帶來的便利
- 1 回答
- 0 關(guān)注
- 1166 瀏覽
添加回答
舉報