#科技进步#时间永远是自己的

如何升级自己之前写的npm包,然后发布到npm官网上,然后其他项目怎么更新最新的包

一、前言

之前写了一篇发布npm包,手把手教你用npm发布第一个npm包的详细教程:https://www.mwcxs.top/page/600.html

如果你想升级自己写的包,该如何做,本文就是介绍这个的。


二、准备阶段

1、你经写了一个npm包(watermark-dom),然后已经上传到npm中,那么它的版本就是1.0.0;


2、将npm的源切换到npm官方的。

npm config set registry https://registry.npmjs.org/

然后就是自身的包的修改,修改了很多内容,增加了很多东西。


三、操作阶段

1、查看已经发布的这个包watermark-dom的版本

npm view watermark-dom versions



2、修改本地版本号

npm version <update_type>

update_type 有三个参数,

比如我想来个1.0.1版本,注意,是最后一位修改了增1,那么命令:npm version patch    回车就可以了;

比如我想来个1.1.0版本,注意,是第二位修改了增1,那么命令:npm version minor    回车就可以了;

比如我想来个2.0.0版本,注意,是第一位修改了增1,那么命令:npm version major     回车就可以了;

但是发现问题:

npm ERR! Git working directory not clean.


意识是说:Git工作目录不干净。

就是说有这个.idea文件夹的问题。

删掉,git add . git  commit ,git push

因为编辑器总会给项目添加一些配置项,然后我直接使用命令行,没有用编辑器和git  bash here。


进行了一次git version major,进行了一次 git version patch。



3、修改远程的版本号

本地修改完后,上传到npm,远端的还是1.0.0版本,我们还要修改远端的版本:

npm publish


 这样就完成了所有工作内容。


4、查看一下远端的这个包的版本信息

npm view watermark-dom versions


在官网上看一下,https://www.npmjs.com




四、下载更新包

1、方法1:手动更新

手动修改package.json中依赖包版本,执行npm install,从远程下载所有包更新本地包


2、方法2:使用插件

npm install -g npm-check-updates
ncu // 查看可更新包
ncu -u // 更新package.json
npm install// 升级到最新版本*


五、异常场景及解决办法

(1)404 Not Found - PUT https://www.npmjs.com/watermark-dom


解决办法:就是修改npm源。

不要使用 npm config set registry https://www.npmjs.com/。使用npm config set registry https://registry.npmjs.org/


(2) 401 Unauthorized - PUT https://registry.npmjs.org/watermark-dom - You must be logged in to publish packages.


解决办法:

(1)执行 npm adduser,输入您相应的 Username  Password  Email: (this IS public)


然后再次执行npm publish,就可以成功。


(3)npm ERR! Unexpected token < in JSON at position 1 while parsing near '


解决办法:就是修改npm源。

不要使用 npm config set registry https://www.npmjs.com/。使用npm config set registry https://registry.npmjs.org/


(4)npm ERR! Git working directory not clean.


解决办法:删除.idea的文件夹,因为这个是编辑器自带的。


PS:一下子变成了2.0.2的版本,因为主要是大改动,之前一直没有再发包。


文章转载:原创
感谢你的阅读,本文由 sau交流学习社区 版权所有。
如若转载,请注明出处:sau交流学习社区-power by saucxs(程新松)(/page/759.html)
交流咨询
    官方QQ群
    群号663940201,欢迎加入!
    sau交流学习社区交流群

图文推荐

saucxs聊天机器人
saucxs
hi ,欢迎来到sau交流学习社区,欢迎与我聊天,问我问题哦!