手机版

发布一个npm包来帮助理解npm的使用

时间:2021-08-27 来源:互联网 编辑:宝哥软件园 浏览:

Npm在前端工程中起着不可或缺的作用。前端工程师每天通过npm安装项目依赖项,通过npm发布自己的包和更新包,通过npm脚本、包等运行开发环境。

我通常专注于实现业务,但我从未理解过包的发布过程。我从繁忙的日程中休息了一下。今天,我将体验编写和发布一个包的过程,记录下来并与大家分享。

包的诞生过程无非就是:编写-测试-发布-迭代-测试-发布。

初始化项目

Mkdir数学工具演示新文件夹

Npm init初始化package.json文件,并根据提示输入项目信息:

包名项目名版本描述版本描述入口点入口文件测试命令git存储库git仓库地址关键字关键字信息作者作者协议等。

向npm init -y:添加-y标志,并在默认情况下直接生成它。

将代码写在包中

特点包括:我们实现了一个小工具的加法,减法,乘法和除法。

创建一个新的index.js条目文件

module.exports={ add:add,minus:minus }函数add(num1,num 2){ if(type of num 1==' number ' type of num 2==' number '){ return num 1 num 2;}else{ throw('参数必须是number ')} }函数减(左,右){ if(type of left==' number ' type of right==' number '){ return left-right;} else {throw('参数必须是数字')}}测试

测试无非就是介绍编写好的模块和运行测试用例,这里就不多说了。

发布

Npm登录登录。输入帐户密码电子邮件地址。如果没有账号,先申请:链接。

Npm发布:发布书面包

失败:重复名称或修改包名,如:

重新发布:npm发布:成功!默认版本是1.0.0

如何迭代发布的包

当包发布时,bug是不可避免的。当然,作者也会考虑扩展函数,修复bug或者迭代函数需要同步代码修改到远程仓库。

修改代码

例如,进行了以下修改:

module.exports={ add:add,minus:minus }函数add(){ var left=arguments[0];var right=参数[1];if(type of left==' number ' type of right==' number '){ return left right;}else{ throw('arguments必须是number') } }function减(){ var left=arguments[0];var right=参数[1];if(type of left==' number ' type of right==' number '){ return left-right;} else {throw('参数必须是数字')}}修改版本号

我们可以直接在package.json中更改版本字段值。

但是,最好使用npm提供的命令来修改版本号(例如,目前的v 1 . 0 . 0):

Npm版本补丁- 1.0.1:是小修改,功能不变。使用npm版本minor - 1.1.0:可能会增加一些功能,但不会影响以前的使用。Npm版本major - 2.0.0:可能已经更改了API并进入了大范围的修改。详细步骤:关于npm语义版本

发布

npm发布如何使用已发布的包

在npm仓库中搜索包名,然后分别输入npm install packageName -S [-D]作为依赖项或开发依赖项。以我们刚刚发布的包为例:

首次使用此软件包npm install -S math-tool_demo来安装刚刚发布的软件包

在index.js中引入和使用:

var math=require(' math-tool _ demo ')var addRes=math . add(1,2);var minusRes=.减(1,2);正在使用Console.log(地址,缺点),//输出:3,-1,包可能已经迭代更新

Npm过时检查项目包. json中定义的每个包在远程仓库中是否有新版本

找到了一个新版本,目前使用1.0.0,最新版本是2.0.0。

npm更新的更新包[packageName]

打字后没有发现回应,没有更新包。

检查package.json中的包依赖关系定义

有三个版本定义:

直接写确切的版本号:比如1.0.0不移动,但是如果有功能更新,就用新版本:1.0.0比较保守,只能稍微更新,比如bug修复等。~ 1.0.0 1.0.0表示=1.0.0 1.2.0

~1.0.0表示=1.0.0 1.1.0

因此不允许更新到2.0.0,package.json中的版本号只能手动更改和更新。

为什么会变成这样?因为第一个数字意味着重大变化,轻率的更新可能会带来不可预测的后果

传输门:NPM-日期,国家预防机制-更新

以上就是本文的全部内容。希望对大家的学习有帮助,支持我们。

版权声明:发布一个npm包来帮助理解npm的使用是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。