目录
1.安装Node.js
参考廖雪峰的官方网站
1.从node.js官网下载对应平台的安装程序,在Windows上安装时务必选择全部组件(勾选Add to PATH)
2.安装完成后,在Windows环境下,打开命令提示符
==》
输入node -v,如果安装正常:
继续在命令提示符输入node
,进入Node.js的交互环境。在交互环境下,可以输入任意JavaScript语句,例如1+1
,回车后将得到输出结果。
要退出Node.js环境,连按两次Ctrl+C。
==》如果输入node -v,出现提示:“'node' 不是内部或外部命令,也不是可运行的程序 或批处理文件。”
那么一般是环境配置的问题,在系统变量Path中添加Node.js的安装目录路径即可
3.npm是Node.js的包管理工具(package manager)
为什么需要一个包管理工具呢?因为在Node.js上开发时,会用到很多别人写的JavaScript代码。如果要使用别人写的某个包,每次都根据名称搜索一下官方网站,下载代码,解压,再使用,非常繁琐。于是一个集中管理的工具应运而生:大家都把自己开发的模块打包后放到npm官网上,如果要使用,直接通过npm安装就可以直接用,不用管代码存在哪,应该从哪下载。
更重要的是,如果要使用模块A,而模块A又依赖于模块B,模块B又依赖于模块X和模块Y,npm可以根据依赖关系,把所有依赖的包都下载下来并管理起来。否则,靠我们自己手动管理,肯定既麻烦又容易出错。
npm已经在Node.js安装的时候顺带装好了。在:nodejs安装目录\node_modules下
==》输入npm -v:
==》或者输入npm,应该看到类似输出:
2.修改npm默认的全局安装路径和缓存路径
2.1 npm有两种安装方式:全局安装和局部安装
1)全局安装:就是在任何文件夹都可运行,其原理也就是写进环境变量,每次在命令行中输入命令时,根据环境变量的设置寻找对应的可执行程序运行。
npm install -g xxx
2)局部安装:就是在当前项目中安装需要的模块,仅在当前项目中起作用
npm install xxx
2.2 关于模块的默认安装路径
1)局部安装:默认的安装路径为项目根目录文件夹node_modules(就让它默认就得了)
2)全局安装:默认的安装路径为C:\Users\xxx\AppData\Roaming\npm\node_modules,缓存路径为C:\Users\xxx\AppData\Roaming\npm_cache(xxx:是自己系统的用户名,我的是asus)
说明一下:在没有安装任何模块前C:\Users\xxx\AppData\Roaming下只有一个npm文件夹(里面是空的),并没有npm_cache文件夹;但在安装任意一个模块后,就会自动生成npm_cache,并且在npm目录下生成一个node_modules文件夹(模块实际都安装在这里面)。
修改默认安装路径的理由:都装在C盘来卡电脑的吗?而且修改后也可以更方便地找到自己通过npm下载的模块。
2.3 国内镜像网站配置以及npm默认全局路径修改方法
2.3.1 国内镜像网站配置
通过npm命令下载的时候因为访问的是国外网站,所以可能会出现下载缓慢或者直接下载失败的情况,在这种情况下,可以通过配置国内镜像来解决,一般配置的是阿里的npm镜像,在命令提示符中输入以下命令(配置一次就可以了,以后下载模块的时候就是从国内镜像下载)
npm config set registry https://registry.npm.taobao.org
(C盘下的这个.npmrc文件其实是配置之后自动生成的,以后配置npm的信息也是写在这里面)
补充:(使用cnmp下载模块,我没试过)
- 安装cnpm:npm install -g cnpm --registry=https://registry.npm.taobao.org
- 使用cnpm安装模块:cnpm install <package_name>
以下总结了两种修改方法,其实本质是一样的
2.3.2 全局路径修改方法1
1)在node.js的安装目录里创建"node_cache"文件夹(与node_modules是同级目录)
- node_modules:用来存放全局模块,本来就有,无需创建新的,npm就安装在里面
- node_cache:用来存放全局缓存
2)在命令提示符中依次输入:
- npm config set cache "D:\nodejs\node_cache"
- npm config set prefix "D:\nodejs"(node.js会自动寻找该路径下的node_modules文件夹为实际存放全局模块的路径,以后安装的全局模块都会被放到D:\nodejs\node_modules下,跟npm模块在一个文件夹中)
3)因为电脑系统还不知道默认路径已更改,所以还需要在环境变量中设置NODE_PATH路径(模块执行路径)
4)测试:下载一个模块测试,以gulp为例
输入命令进行安装:npm install -g gulp
此时,可以发现npm模块安装的默认全局路径已经改到了相应的文件夹中:
查看版本,说明下载成功,可用:
这种方法,模块下载成功并可用(方法可行)。
但是nodejs目录下也多了一些东西(安装模块产生的),由于个人原因,看着很难受(不整洁),决定换第2种方法(自己建一个存放全局模块的路径,不使用nodejs里面本身的node_modules了),不介意这一点的话,直接使用方法1就挺简单。
2.3.3 全局路径修改方法2
1)在node.js的安装目录(也不一定非得是这个目录,可以是自己想要的任何目录)下创建"node_cache"、"node_global"文件夹
- node_global:用来存放全局模块(配置之后,安装模块后,该文件夹下会自动生成node_modules存放全局模块)
- node_cache:用来存放全局缓存
2)在命令提示符中依次输入:
- npm config set cache "D:\nodejs\node_cache"
- npm config set prefix "D:\nodejs\node_global"(和方法1同理,node.js会自动寻找该路径下的node_modules文件夹为实际存放全局模块的路径,以后安装的全局模块都会被放到D:\nodejs\node_global\node_modules下。虽然在还没有安装任何模块前,node_global文件夹是空的,但是安装后就会出现node_modules文件夹)
配置文件修改成功:
3)环境配置
在用户变量Path中,添加值:
新建系统变量NODE_PATH,添加值:
4)测试:下载一个模块测试,以gulp为例
输入命令进行安装:npm install -g gulp
此时,可以发现npm模块安装的默认全局路径已经改到了相应的文件夹中:
查看版本,说明下载成功,可用:
3.npm安装卸载命令
更多npm命令请参考:npm中文文档
3.1 npm安装模块
- 【npm install xxx】利用 npm 安装xxx模块到当前命令行所在目录
- 【npm install -g xxx】利用npm安装全局模块xxx
- 【npm install xxx】安装但不写入package.json
- 【npm install xxx -save】 安装并写入package.json的"dependencies"中
- 【npm install xxx --save-dev】安装并写入package.json的"devDependencies"中
3.2 npm卸载模块
- 【npm uninstall xxx】卸载xxx模块
- 【npm uninstall -g xxx】卸载全局模块xxx