注意:
(1)拆出来之后的工作流程;
(2)包升级之后,后续的版本控制;
(3)在每一个包中,为了遵守规范,请在包的根目录上添加一个README.md文件,对包进行说明;
常见命令:
(1)npm init:创建package.json文件;其中会要求进行一系列的交互,如果全部使用默认配置,则可以输入npm init --yes或者npm init -y;
(2)在npms.io上,可以查看各个包的质量、受欢迎程度以及维护性;
(3)在cli中打开包的首页:npm home 包名称;
(4)在cli中打开包的issues:npm bug 包名称;
(5)查看包的git仓库:npm repo 包名称;
npm包的版本控制:
版本格式:主版本号.次版本号.修订号
主版本号:新的架构调整;
次版本号:新增功能;
修订号:修复bug;
流程:
(1)新建文件夹,进入文件夹并执行npm init;对于生成的package.json,其中的name和version是必须的,这两个属性构成了这个包在npm上的唯一标识;其中name是包的名字,必须是唯一的;main属性代表当使用require(包)的时候,引用的是哪一个文件,这个可以是默认值,也可以是包中的任何一个有效文件;keywords:表明包的用途,他人搜索时根据关键字进行搜索;author表示包的开发人员。
(2)对包进行发布:使用npm whoami验证自己是不是已经登录了npm,如果已经登录会返回当前的登陆账号名称;确认已经登录之后,在项目的根目录中执行命令:npm publish进行发布;
(3)对包进行更新:当对包的代码进行更新之后,需要重新进行发布,这个时候需要进行版本控制,可以手动去包的package.json中进行修改,但是npm也提供了相应的命令执行来进行相应的操作:npm version major会更新包的主版本号、npm version minor会更新包的次版本号、npm version patch会更新包的修订号;更新完版本号之后,再使用npm publish命令进行发布便可以实现包的更新;
撤销已经发布的包:
(1)撤销包可能会对使用该包作为依赖的项目产生影响,因此npm禁止对发布时间超过24小时的包进行撤销;
(2)对于发布时间没有超过24小时的包,可以执行撤销发布操作,撤销命令为npm unpublish 包名称 --force;
(3)不建议使用npm unpublish操作,如果包打算废弃,建议使用npm deprecate命令进行代替,该命令并不会在npm 上撤销已经存在的包,但是会在任何人尝试安装这个包的时候,看到发布者的警告提示信息;使用方法:npm deprecate 包名称[@版本] 提示信息;这样一来,他人在尝试安装这个包的时候会看到包作者的提示信息;