看完本文,你将学会“开发”、“配置”、“发布”,最终拥有自己的npm包。1.初始化npm初始项目可以通过npminit命令创建,需要逐步完善的信息:包名:(npmtest)版本:(1.0.0)描述:入口点:(index.js)test命令:gitrepository:keywords:author:license:(ISC)创建package.json后,我们就可以轰轰烈烈的写代码了。2.开发Tips2.1调试开发过程中如何调试是一个痛点。很多人会把代码复制到node_modules中,然后调试结果。其实我们有更好的方法:“npmlink”,使用过程如下:在包的根目录下执行npmlink在项目中执行npmlinkpackage-name。这时候就可以在项目中实时访问package-name了。目前,这种方法不能用于纱线。3.Release3.1要创建/登录帐户,您首先需要在https://www.npmjs.com/signup注册一个帐户。完成后在终端执行npmlogin,输入账号密码后登录成功。这里要注意一点,如果设置了淘宝源,需要修改为npm源,使用如下命令恢复:npmconfigsetregistryhttp://registry.npmjs.org但是,在鉴于实际情况,我们在淘宝和npm源之间相互访问切换其实太麻烦了。更好的解决方案是在package.json中配置publishConfig字段。有关配置说明,请参阅下一段。3.2package.json配置本次主要介绍:publishConfigmainfilespublishConfig发布配置使用。"publishConfig":{"registry":"https://registry.npmjs.org/","tag":"beta","access":"public"}registry源地址标签发布对应的dist-tag标签访问如果是scoped包,则必须设置为public(付费帐户除外)。主包的入口执行文件,通常我们会指定为index.js。files我们需要控制npm包的大小,避免在安装过程中花费太多时间。一般我们只输出编译后的内容、文档、样式等。package.json中files字段的作用是控制项目包含的内容,可以设置为文件数组或文件名。此外,我们还可以在根目录或子目录下创建.npmignore文件,其写法与gitignore相同。有些文件不能被忽略:package.jsonREADMECHANGES/CHANGELOG/HISTORYLICENSE/LICENCENOTICE“main”字段中的文件以下文件默认被忽略:.gitCVS.svn.hg.lock-wscript.wafpickle-N.*.swp。DS_Store._*npm-debug.log.npmrcnode_modulesconfig.gypi*.origpackage-lock.json3.3版本管理版本号遵循语义版本规则,由MAJOR.MINOR.PATCH组成,扩展预发布也可以在末尾添加版本号信息。主要:当您进行不兼容的API修改时,次要:当您进行向后兼容的功能添加时,补丁:当您进行向后兼容的错误修复时。版本号可以手动修改,也可以通过npmversion命令管理://假设当前版本号为v1.0.0npmversionpatch//v1.0.1npmversionprepatch//v1.0.2-0npmversionminor//v1.1.0npmversionmajor//v2.0.0npmversion的完整命令如下:npmversion[
