package (包)commonJs的包规范允许我们将一组相关的模块组合到一起,形成一组完整的工具。commonJs的包规范由 包结构 和 包描述文件 两部分组成。1、什么是包结构?用于组织包中的各种文件2、什么是包描述文件?描述包的相关信息,以供外部读取分析。【相当于个人简历】包结构包实际上就是一个压缩文件,解压以后还原为目录。符合规范的目录,应该包含以下文件:package.json : 描述文件 【必须存在】bin :可执行二进制文件lib : js代码doc : 文档test : 单元测试到此我们的包也有了,模块都有了,我们由很多很多的包时,如果没有一个管理者,是不是找也找不到,大家可能都会乱成一锅粥,那么这时候一个神奇的角色出现了,NPM(Node Package Manager)NPMCommonJs包规范是一种理论,NPM是其中的一种实践。对于Node而言,NPM帮助其完成了第三方模块的发布、安装和依赖等。借助NPM,Node与第三方模块之间形成了一个很好的生态系统。这里我们可以想象着,包就是手机APP上的应用软件,NPM就是APP Store。NPM常用命令npm -v : 查看版本npm version : 查看所有模块的版本npm search 包名 : 搜索模块包名npm init : 初始化package.json 描述文件npm install 包名 : 在当前目录安装模块npm install 包名 -g : 在全局安装模块【全局安装的包一般独使工具,比如babel,sass】npm remove 包名 : 卸载包npm install 包名 –save : 安装包并添加到依赖中 【用的较多dependendcies】npm install 包名 –save-dev : 安装包并添加到开发依赖中 【用的较多devDependcies】npm install : 自动根据当前项目package.json文件中的 dependencies 中的描述去下载依赖包平时我们用的npm的服务器在国外,所有经常用npm安装的比较慢,那么我们怎么用? 可以安装淘宝的cnpm的镜像,那样就比较好了。这个cnpm和npm的使用方式一样,只是把指令的 npm 换成 cnpm 来使用。