TL; DR
Bạn có thể làm điều này bằng cách sử dụng --prefixcờ và --globalcờ *.
pje@friendbear:~/foo $ npm install bower -g --prefix ./vendor/node_modules
bower@0.7.0 /Users/pje/foo/vendor/node_modules/bower
* Mặc dù đây là cài đặt "toàn cầu", các thùng đã cài đặt sẽ không thể truy cập được thông qua dòng lệnh trừ khi ~/foo/vendor/node_modulestồn tại PATH.
TL; R
Mỗi thuộc tính cấu hình của npmcó thể được đặt ở bất kỳ sáu vị trí khác nhau. Theo thứ tự ưu tiên:
- Cờ dòng lệnh:
--prefix ./vendor/node_modules
- Biến môi trường:
NPM_CONFIG_PREFIX=./vendor/node_modules
- Tập tin cấu hình người dùng:
$HOME/.npmrchoặc userconfigparam
- Tập tin cấu hình toàn cầu:
$PREFIX/etc/npmrchoặc userconfigparam
- Tập tin cấu hình tích hợp:
path/to/npm/itself/npmrc
- Cấu hình mặc định: node_modules / npmconf / config-defs.js
Theo mặc định, các gói được cài đặt cục bộ đi vào ./node_modules. những cái toàn cầu đi vào prefixbiến cấu hình ( /usr/localtheo mặc định).
Bạn có thể chạy npm config listđể xem cấu hình hiện tại của bạn và npm config editthay đổi nó.
PS
Nói chung, npmtài liệu của nó thực sự hữu ích. Phần thư mục là một tổng quan cấu trúc tốt của npm và phần cấu hình trả lời câu hỏi này.