1 回答

TA貢獻1815條經驗 獲得超6個贊
npm install --global xxx 屬于全局安裝
npm install xxx 屬于本地安裝
1、全局路徑
Windows下的Nodejs npm路徑是appdata
cmd下執行以下命令
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
[重要]環境變量配置:在環境變量path追加:D:\nodejs\node_global;
2、本地路徑(項目級)
NODE_PATH 是干什么的呢?
操作系統中都會有一個PATH環境變量,想必大家都知道,當系統調用一個命令的時候,就會在PATH變量中注冊的路徑中尋找,如果注冊的路徑中有就調用,否則就提示命令沒找到。
那 NODE_PATH 就是NODE中用來尋找模塊所提供的路徑注冊環境變量
[加載機制]
NODE_PATH中的路徑被遍歷是發生在從項目的根位置遞歸搜尋 node_modules 目錄,直到文件系統根目錄的 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 參數的時候 --save 或 --save-dev參數是無效的。
這樣就帶來一個問題。此時 package.json 中的 dependencies, devDependencies 將無法享受到npm自動更新帶來的便利
- 1 回答
- 0 關注
- 1178 瀏覽
添加回答
舉報