* **默认全局安装的路径:**
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_modules本地安装与全局安装
- Inspector
- 模块
- hello world
- 使用nodejs开发桌面客户端应用
- Electron
- api
- 使用 Node.js 的 API
- 事件
- 安装
- 调试
- 读取本地文件
- 调用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区别