包
什么是包
Node.js中的第三方模块又叫做包
包的来源
不同于Node.js的内置模块与自定义模块,包是由第三方个人或团队开发出来的,免费供所有人使用
注意: Node.js中的包都是免费且开源的,不需要付费即可免费下载使用
包的作用
包是基于内置模块封装出来的,提供了更高级,更方便的API,极大的提高了开发效率
包和内置模块的关系,类似于jQuery和浏览器内置API之间的关系
包的下载
一家名为npm,Inc.的公司旗下有一个非常著名的网站: https://www.npmis.com/,它是全球最大的包共享平台,可以在这个网站上搜索到任何需要的包
npm,Inc.公司提供了一个地址为: https://registry.npmjs.org/ 的服务器,度外来共享所有的包,我们可以从这个服务器上下载自己所需要的包
我们可以:
- 从 https://www.npmis.com/ 网站上搜索自己需要的包
- 从 https://registry.npmjs.org/ 服务器上下载自己需要的包
如何下载包
上述公司提供了包管理工具,可以通过这个工具,从上述服务器将包下载到本地使用
这个包管理工具的名字叫做 Node Package Manager(简称npm包管理工具), 这个包管理工具随着Node.js的安装包一起被安装到了用户电脑上
在终端中执行: npm -v 命令,可以查看电脑上安装的npm包管理工具的版本号
包的分类
项目包
被安装到项目的node_modules目录中的都是项目包
项目包又分为两类:
- 开发依赖包 (被记录到devDependencies结点的包,只在开发期间用到)
- 核心依赖包 (被记录到dependencies结点的包,在开发期间和项目上线都会用到)
全局包
在执行安装命令时,如果提供了-g参数,则会把包安装为全举报
全局包会被安装到 C:\Users\用户目录\AppData\Roaming\npm\node_modules 目录下
npm i 包名 -g #全局安装指定的包
npm uninstall 包名 -g #卸载全局安装的包
注意:
- 只有工具性质的包,才有全局安装的必要性,因为它们提供了好用的终端命令
- 可以根据官方的使用说明判断是否全局安装
i5ting_toc
i5ting_toc是一个可以把md文档转为html页面的小工具,使用步骤如下:
#将i5ting_toc 安装为全局包
npm install -g i5ting_toc
#调用i5ting_toc 轻松实现 md 转 html 的功能
i5ting_toc -f 要转换的md文件路径 -o
规范包的结构
一个规范的包的组成结构必须符合以下3点要求:
- 包必须以单独的目录存在
- 报的顶级目录必须要包含package.json这个包管理配置文件
- package.json中必须包含name,version,main这三个属性,分别代表包的名字,版本号,包的入口