npm安裝模塊的方式有兩種:本地安裝,全局安裝。node
這二者的區別在於,在用npm install xxx時加不加-g這個選項。nginx
本地安裝的路徑在win中是當前cmd的路徑。好比,我一打開cmd時,路徑是C:\Documents and Settings\Administrator。那若是我用npm install koa的話,結果會在這個目錄下生成一個node_modules文件夾,裏面是koa文件夾。很顯然,不少時候,咱們不會把工做路徑設在c盤的那個地方。這時,若是require(‘koa’);的話就會提示找不到模塊的錯誤。sql
那怎麼辦呢,就是先在cmd裏面切換目錄到你的工做路徑,而後再安裝。這也是推薦的方式。express
還有一點要注意,就是安裝後用require(‘koa’);時,要像普通js同樣,徹底顯式的指定它的路徑。好比個人chat_server.js是這樣引用socket.io的。 require('./node_modules/socket.io/index.js')(server);,前面有個點表明當前js文件的路徑。npm
全局安裝:這個很好理解,好比本身作的不少東西都是基於express,並且東西里面又有不少地方用到express,若是每次都像上面那樣指定路徑的話會很煩人。若是用全局安裝的話,就能夠直接用require('express');了。windows
全局安裝的默認路徑是koa
那若是我不喜歡這個路徑的話,怎麼辦。socket
好比個人node.js安裝在F:\nodejs,新建一個lib文件夾,裏面放新安裝模塊。oop
先找到F:\nodejs\node_modules\npm裏面的npmrc這個文件,打開能夠看到就只有測試
prefix=${APPDATA}\npm
將其改爲prefix=F:\nodejs\lib\npm\node_modules\npm。
這時記得安裝的時候加上-g選項。
全局安裝的方式在windows 中,必須配置 NODE_PATH=F:\nodejs\lib\npm\node_modules\npm\node_modules 環境變量,才能在代碼做用使用require引用,不然會報錯。紅色部分是自動生成的文件夾,須要在NODE_PATH中添加,在是prefix並未指定。
另外,設置完環境變量後要從新打開cmd才能讓新設置的環境變量生效。
by config command
npm config set registry http://registry.cnpmjs.org
npm info underscore (若是上面配置正確這個命令會有字符串response)
命令行指定
npm --registry http://registry.cnpmjs.org info underscore
編輯 ~/.npmrc 加入下面內容
registry = http://registry.cnpmjs.org
npm config set proxy http://server:port
npm config set https-proxy http://server:port
若是須要認證的話能夠這樣設置:
npm config set proxy http://username:password@server:port
npm confit set https-proxy http://username:password@server:port
若是代理不支持https的話須要修改npm存放package的網站地址。
npm config set registry "http://registry.npmjs.org/"
刪除代理
npm config delete proxy
nrm 是一個 NPM 源管理器,容許你快速地在以下 NPM 源間切換:
sudo npm install -g nrm
列出可用的源:
➜ ~ nrm ls
npm ---- https://registry.npmjs.org/ cnpm --- http://r.cnpmjs.org/ taobao - http://registry.npm.taobao.org/ eu ----- http://registry.npmjs.eu/ au ----- http://registry.npmjs.org.au/ sl ----- http://npm.strongloop.com/ nj ----- https://registry.nodejitsu.com/ pt ----- http://registry.npmjs.pt/
切換:
➜ ~ nrm use taobao Registry has been set to: http://registry.npm.taobao.org/
增長源:
nrm add <registry> <url> [home]
刪除源:
nrm del <registry>
測試速度:
nrm test