欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

npm包发布流程 正式包和测试包beta

程序员文章站 2022-05-31 23:43:55
...

注册一个npm账号

注册地址:https://www.npmjs.com/

初始化要封装的包

1、选择一个文件夹,然后命令行cd进去

npm init

接下来就是一长串表单:

  • name:填写你这个包的名字,默认是你这个文件夹的名字。不过这里要着重说一下,最好先去npm上找一下有没有同名的包。最好的测试方式就是,在命令行里面输入npm install 你要取的名字,如果报错,那么很好,npm上没有跟你同名的包,你可以放心大胆地把包发布出去。如果成功下载下来了。。。那么很不幸,改名字吧。。。
  • version:你这个包的版本,默认是1.0.0
  • description:这个用一句话描述你的包是干嘛用的,比如我就直接:‘watermark for dom’
  • entry point:入口文件,默认是Index.js,你也可以自己填写你自己的文件名
  • test command:测试命令,这个直接回车就好了,因为目前还不需要这个。
  • git repository:这个是git仓库地址,如果你的包是先放到github上或者其他git仓库里,这时候你的文件夹里面会存在一个隐藏的.git目录,npm会读到这个目录作为这一项的默认值。如果没有的话,直接回车继续。
  • keyword:这个是一个重点,这个关系到有多少人会搜到你的npm包。尽量使用贴切的关键字作为这个包的索引。我这个包嘛,第一是在express下工作的,然后又是一个插件plugin,然后又是一个注册路由route用的,而这个路由又是基于文件目录dir,所以很好就得出我的包的索引关键字。
  • author:写你的账号或者你的github账号吧
  • license:这个直接回车,开源文件来着。。。

PS:你可以一直回车,之后再packjson里进行编辑这个表单。

2、然后,在目录下新建一个index.js文件,或者你刚才修改了那个entry point的值,那么你这个文件名也跟着改为那个值。

3、然后,最重要的,写好README.md,一个给大家描述你的包的markdown文件,如果大家都不知道你的代码是做什么的,会有人去下载你的代码吗?

npm命令登录

接下来就是:用npm命令登陆一下:

npm login

登录的是自己注册的用户名和密码。

PS:或者使用添加npm用户

npm adduser

npm发布到官方网上

然后,在你的目录下使用npm publish

npm publish

PS :每一次发布新的一版,version版本要改变,不然npm会给我报错。一般情况下,一旦你要修改你已经发布后的代码,然后又要执行发布操作,务必到package.json里面,把version改一下,比如从1.0.0改为1.0.1,然后在执行npm publish,这样就可以成功发布了。

常遇到的问题:

Code 404 是因为你没有登录账号
Code 403
403 Forbidden - PUT
[https://registry.npm.taobao.org/zr_test_demo(https://registry.npm.taobao.org/zr_test_demo) - no_perms
原因:因为当前设置的是cnpm 登录到的是cnpm,所以需要切换回来
可以输入一下命令查看当前的登录源:npm config get registry
淘宝源,需要切回到npmjs源,输入以下命令:
npm config set registry=http://registry.npmjs.org
设置成淘宝镜像:
npm config set registry http://registry.npm.taobao.org/

Code 401
Unauthorized - PUT http://registry.npmjs.org/zr_test_demo - You must be logged in to publish packages.
原因:还是因为第一次执行npm adduser时是淘宝镜像,后来设置之后需要重新登陆(执行npm adduser 或 npm login)

关于如何快速切换npm镜像源的问题可以参考这篇文章
https://blog.****.net/weixin_44309374/article/details/109594065

发布测试包 beta

先在package.json中修改version版本号,版本号后边加-beta,支持beta1,beta2等等。

 "version": "0.0.1-beta",

发布测试版本:

npm publish --tag=beta

下載测试版本:
比如我这个包的名字叫 xiwne-demo 那下载beta版的应该是下面的代码

npm install [email protected]
相关标签: 第三方库 npm