Node.js+Webpack开发实战
上QQ阅读APP看书,第一时间看更新

3.1 NPM包管理器介绍

Node.js中包管理器是用来管理Node.js软件包的工具,类似于Java的Maven或者PHP的Composer。

NPM(Node.js Package Manager)是Node.js默认的包管理工具,能够解决Node.js开发和部署中软件包依赖的问题。常见的使用场景有以下几种:

· 从NPM服务器下载别人编写的第三方包到本地进行使用。

· 将自己编写的软件包上传到NPM服务器供他人使用。

3.1.1 更换NPM镜像源

在国内访问NPM默认的中央仓库速度比较慢,可以更换为淘宝提供的NPM镜像源以加快软件包的安装。

在终端按需执行以下命令:

# 设置镜像源为淘宝
npm config set registry https://registry.npm.taobao.org
# 还原官方镜像源
npm config delete registry

使用淘宝镜像之后无法使用publish和unpublish命令,如果需要发布软件包和撤销发布的软件包,则需要还原为官方镜像。

3.1.2 初始化项目

在项目目录下执行npm init命令,依照提示输入问题的答案之后即可创建一个标准的npm模块,同时会生成一个package.json文件,其中记录了当前的模块名、版本、依赖等信息。

3.1.3 使用npm命令安装模块

安装Node.js模块的npm命令语法如下:

npm install <模块名称>

如果需要使用常用的Koa框架进行开发,则可以使用如下命令进行安装:

npm install koa

该命令执行完毕之后,Koa模块就会出现在当前目录下的node_modules文件夹中,使用如下代码即可使用该模块:

const koa = require('koa');

3.1.4 本地安装与全局安装

npm的模块安装分为全局安装和本地安装,默认为本地安装,如果需要全局安装,则要使用-g参数:

npm install express-generator -g
1.本地安装

· 第三方模块将被安装到当前目录的node_modules下(如果没有该目录则会自动新建)。

· 通过require('模块名')即可导入本地模块。

2.全局安装

· 第三方模块将被安装到/usr/local/lib/node_modules目录或者安装Node.js的目录。

· 可以直接在命令行使用。

· 不可以使用require('模块名')来引用。

3.1.5 生产依赖和开发依赖

有一些软件包是开发环境和生产环境都需要的,而有一些只在开发环境使用,比如测试框架。

1.开发依赖

使用--save-dev选项即可将软件包安装为开发依赖,依赖信息将被保存到package.json的devDependencies中。

npm install eslint --save-dev
2.生产依赖

使用--save选项即可将软件包安装为生产依赖,开发环境和生产环境都需要使用,依赖信息将被保存在package.json的dependencies中。

npm install koa --save

3.1.6 其他npm命令

其他npm命令如表3-1所示。

表3-1 其他npm命令