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

2020-06-17 06:39:22易采站长站整理

}else{
throw('arguments must be number')
}

}
function minus(){
var left = arguments[0];
var right = arguments[1];
if(typeof left === 'number' && typeof right === 'number'){
return left - right;
}else{
throw('arguments must be number')
}
}

修改版本号

我们可以直接改package.json里的version字段值.

不过最好还是使用npm 提供的命令修改版本号(比如当前为v1.0.0):

npm version patch–>1.0.1:属于小修改,不更改功能使用
npm version minor–>1.1.0:可能添加了一些功能,不影响以前的使用。
npm version major–>2.0.0:可能改了API,输入大范围的修改。

详细移步:关于npm语义版本

发布


npm publish

如何使用发布的包

到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 = math.minus(1,2);

console.log(
addRes,
minusRes,
)//输出:3,-1

正在使用,该包可能已经迭代更新

npm outdated检查每个定义在项目package.json中包在远程仓库是否有新版本

发现有新版本,目前使用的是1.0.0,最新的是2.0.0。

npm update [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中的版本号,并更新了。

为何弄成这样?因为第一个数字意味着major改动,贸然的更新可能会带来无法预计的后果

传送门:npm-outdated,npm-update