package(包)commonJs的包规范让我们可以将一组相关的模块组合在一起,形成一套完整的工具。commonJs的包规范由两部分组成:包结构和包描述文件。1.什么是包结构?它用于将各种文件组织在一个包中。2.什么是包描述文件?描述包的相关信息,以供外部阅读和分析。【相当于个人简历】包结构包其实就是一个压缩文件,解压后会还原到一个目录下。一个符合规范的目录应该包含以下文件:package.json:描述文件[必须存在]bin:可执行二进制文件lib:js代码doc:文档test:单元测试至此,我们的包和模块就完成了。当我们的包很多的时候,如果没有manager,万一找不到,大家可能会手忙脚乱。那么一个神奇的角色就在这个时候出现了。NPM(NodePackageManager)NPMCommonJs包规范是一个理论,NPM是一个实践。对于Node来说,NPM帮助它完成第三方模块的发布、安装和依赖。通过NPM,Node和第三方模块之间形成了一个很好的生态系统。这里我们可以想象一下,包就是手机APP上的应用软件,npm就是APPStore。NPM常用命令npm-v:查看版本npmversion:查看所有模块版本npmsearchpackagename:搜索模块包名npminit:初始化package.json描述文件npminstall包名:在当前目录下安装模块npminstall包名-g:全局安装模块【全局安装的包一般单独使用工具,如babel,sass】npmremovepackagename:卸载包npminstall包名--save:安装包并添加到dependencies中【用到更多的依赖】npminstall包名--save-dev:安装包并添加到开发依赖中【更多devDependcies用到】npminstall:根据当前package.json文件中dependencies中的描述自动下载依赖包项目,我们平时用的npm服务器在国外,所以用npm安装经常很慢,那我们怎么用呢?可以安装淘宝的cnpm的镜像,这样就更好了。这个cnpm的使用方法和npm是一样的,只是命令npm换成了cnpm。
