* **默認全局安裝的路徑:**
C:\Users\你的電腦名稱\AppData\Roaming\npm下的
如:`C:\Users\Administrator\AppData\Roaming\npm\node_modules`
* **默認全局cache路徑:**
C:\Users\你的電腦名稱\AppData\Roaming\npm-cache下的
**查看全局安裝路徑**
```
npm root -g
```
**更改默認的全局安裝路徑即cache路徑**
1、啟動cmd,輸入下面兩行命令
~~~
npm config set prefix "D:\nodejs\node_modules\node_global"
npm config set cache "D:\nodejs\node_modules\node_cache"
~~~
2、查看是否設置成功
~~~swift
npm config get prefix
npm config get cache
~~~
3、修改系統環境變量(“我的電腦--右鍵--屬性--高級系統設置---環境變量”)
```
D:\nodejs\;D:\nodejs\node_global\;
```
**全局安裝**
>[info]全局安裝后可以供命令行(command line)使用,用戶可以在命令行中直接運行該組件包支持的命令
~~~
npm install -g electron
~~~
**全局卸載**
```
npm uninstall -g electron
```
**本地安裝**
>[info]將模塊安裝到執行該命令的文件夾下的node_modules文件夾下,不存在node_modules則自動生成
本地安裝后可以直接通過require()的方式引入項目中node_modules目錄下的模塊
如:本地安裝electron后可以使用
`var electron=require("electron")`
~~~
npm install electron --save
~~~
>[danger]--save表示追加方式寫入到package.json文件(不加--save,則會覆蓋方式寫入到package.json)
**本地卸載**
```
npm uninstall electron
```
查看是否還存在該模塊
```
npm ls
```
1、在js實例代碼中,默認下node.js會在NODE_PATH和目前js所在項目下的node_modules文件夾下去尋找模塊,因此,如果只是全局安裝,不能直接通過require()的方式去引用模塊,需要手動解決包路徑的配置問題,當然你也可以復制全局安裝的node_modules文件夾到項目下,還有辦法可以選擇將環境變量的NODE_PATH設置為node安裝目錄`D:\nodejs`。
2、僅僅全局安裝對于包的更新不好管理,可能你需要為每個包重新命名,如gulp@3.8.1、gulp@3.9.1...,為了區別不同項目使用指定的包,保證模塊之間的相互依賴(這塊下面會介紹),區別每個項目正常運行。
因此,不推薦只全局安裝。
例子:weui
D:\nodejs\application中執行 `npm install weui`
安裝完成后
在application文件夾下新增加了一個node_modules文件夾
## **重要的幾個modules**
**npm使用**
* 全局切換鏡像源:`npm config set registry http://registry.npm.taobao.org`
* 查看鏡像源使用狀態:`npm get registry`
* 全局切換官方鏡像源:`npm config set registry http://www.npmjs.org`
* 使用npm卸載插件:npm uninstall [-g] [–save-dev]
* 使用npm更新插件:npm update [-g] [–save-dev]
* 更新全部插件:npm update [–save-dev]
* 查看當前目錄已安裝插件:npm list
* 查看npm幫助:npm help
**全局安裝nrm(推薦)**
nrm 是一個npm 源管理器,允許你快速地在如下 NPM 源間切換;用法與yrm一樣
```
npm install -g nrm
```
**全局安裝cnpm(推薦)**
>[danger]安裝yrm后可以隨意切換鏡像源,就不需要安裝這個了
~~~
npm install -g cnpm --registry=https://registry.npm.taobao.org
~~~
卸載全局cnpm
~~~
npm uninstall -g cnpm
~~~
>[danger]yarn與npm相比 會緩存下載過的項目,能更好的就解決版本問題(他們屬于競爭關系)
**全局安裝yarn(推薦)**
緩存下載過的每個包,以便下次執行install時直接從緩存安裝,安裝好以后`yarn --version`查看版本
```
npm install -g yarn
```
yarn與npm的區別
npm下載的時候是同步下載的 npm不會有緩存 npm會將依賴的版本號進行鎖定
yarn下載的時候是異步下載的 yarn會有緩存(離線模式) yarn會將依賴的版本號進行鎖定
npm在安裝過程中遇到錯誤會繼續下載和安裝包(日志與錯誤都混在一起,找出錯位置很麻煩)
命令對比:
```
npm init == yarn init
npm install == yarn install
npm install -g <name> == yarn global add <name>
npm install <包名> -g == yarn add <包名> -g
npm install <包名> --save == yarn add <包名>
npm install <包名> --dev-save == yarn add <包名> -dev
npm install <包名> --save-dev == yarn add <包名> --dev
npm update <包名> === yarn upgrade <包名>
npm undate <包名> == yarn update <包名>
npm uninstall <包名> === yarn remove <包名>
npm uninstall <包名> == yarn remove <包名>
npm uninstall <包名> --save == yarn remove <包名>
npm -g bin == yarn global bin
yarn bin 全局安裝目錄
yarn cache ls 查看緩存
yarn clear 清除緩存
yarn install 安裝所有包
```
**全局安裝yrm(推薦)**
一個 yarn 鏡像地址管理工具
~~~csharp
npm install -g yrm
~~~
列出所有的鏡像
```
yrm ls
```
結果:
~~~cpp
npm ----- https://registry.npmjs.org/
cnpm ---- http://r.cnpmjs.org/
taobao -- https://registry.npm.taobao.org/
nj ------ https://registry.nodejitsu.com/
rednpm -- http://registry.mirror.cqupt.edu.cn
skimdb -- https://skimdb.npmjs.com/registry
yarn ---- https://registry.yarnpkg.com
~~~
測試哪家的下載速度塊
```
yrm test
```
使用yrm切換源
yrm use 【鏡像名稱,例如: taobao】 選擇一個鏡像使用
- npm
- 更新
- 基礎
- Api
- 安裝Node
- node_modules本地安裝與全局安裝
- Inspector
- 模塊
- hello world
- 安裝插件的版本
- 更新package.json文件的插件版本
- 使用nodejs開發桌面客戶端應用
- Electron
- api
- 使用 Node.js 的 API
- 事件
- electron配置
- 安裝
- 調試
- 讀取本地文件
- 調用Html5的拖放api
- 官方示例下載
- WebView內嵌窗口
- window.open彈出子窗口及其操作
- BrowserWindow渲染主窗口
- 主進程與渲染進程的通信
- 菜單
- 網絡
- 與react結合
- 打包
- 前言
- 對比
- electron-forge
- 打包工具一:electron-packager
- 打包工具二:electron-builder
- Boilerplates樣板工程
- 通用配置文檔
- NW.js
- npm install、npm install --save與npm install --save-dev區別