3 回答

TA貢獻(xiàn)1862條經(jīng)驗(yàn) 獲得超6個(gè)贊
您可以使用--prefix
flag和--global
*標(biāo)志來完成此操作。
pje@friendbear:~/foo $ npm install bower -g --prefix ./vendor/node_modules bower@0.7.0 /Users/pje/foo/vendor/node_modules/bower
*即使這是一個(gè)“全局”安裝,除非~/foo/vendor/node_modules
存在,否則無法通過命令行訪問已安裝的bin PATH
。
每個(gè)可配置屬性npm
都可以在六個(gè)不同的地方設(shè)置。按優(yōu)先順序排列:
命令行標(biāo)志:
--prefix ./vendor/node_modules
環(huán)境變量:
NPM_CONFIG_PREFIX=./vendor/node_modules
用戶配置文件:
$HOME/.npmrc
或userconfig
參數(shù)全局配置文件:
$PREFIX/etc/npmrc
或userconfig
param內(nèi)置配置文件:
path/to/npm/itself/npmrc
默認(rèn)配置: node_modules / npmconf / config-defs.js
默認(rèn)情況下,本地安裝的軟件包會(huì)進(jìn)入./node_modules
。全局的進(jìn)入prefix
配置變量(/usr/local
默認(rèn)情況下)。
您可以運(yùn)行npm config list
以查看當(dāng)前配置并npm config edit
進(jìn)行更改。
PS
一般來說,npm
文檔真的很有幫助。該文件夾的部分是新公共管理的一個(gè)良好的結(jié)構(gòu)概述和配置部分回答了這個(gè)問題。

TA貢獻(xiàn)1825條經(jīng)驗(yàn) 獲得超6個(gè)贊
如果你想在配置中這樣做,你可以像這樣設(shè)置npm配置:
npm config set prefix "$(pwd)/vendor/node_modules"
要么
npm config set prefix "$HOME/vendor/node_modules"
檢查您的配置
npm config ls -l
或者@pje說并使用--prefix
旗幟

TA貢獻(xiàn)1883條經(jīng)驗(yàn) 獲得超3個(gè)贊
對(duì)于OSX,您可以轉(zhuǎn)到您的用戶$HOME
(可能是/ Users / yourname /),如果它尚不存在,則創(chuàng)建一個(gè).npmrc
文件(npm用于用戶配置的文件),并為您的npm包創(chuàng)建一個(gè)目錄安裝在(例如,/ Users / yourname / npm)。在.npmrc文件中,將“prefix”設(shè)置為新的npm目錄,這將是安裝“全局”npm軟件包的地方。顯然,這些“全球”套餐僅適用于您的用戶帳戶。
在.npmrc中:
prefix=${HOME}/npm
然后從命令行運(yùn)行此命令:
npm config ls -l
它應(yīng)該在您自己的本地配置和全局npm配置上提供輸出,您應(yīng)該看到您的本地前綴配置被反映,可能在長(zhǎng)輸出列表的頂部附近。
為了安全起見,我建議使用這種方法來配置您的用戶帳戶的npm行為/usr/local
,而不是在我的其他地方看到的文件夾。
- 3 回答
- 0 關(guān)注
- 2078 瀏覽
添加回答
舉報(bào)