7

一个npm包发布之后,我们难免会修改一些bug,或者增改一些功能,这就涉及到对npm包的迭代。本篇文章就npm迭代涉及到一些知识点进行介绍。
本次演示以《npm发布包教程(二):发布包》中发布的包为基础。

npm包的每次迭代都要涉及到两个方面:

  • 内容的变更
  • 版本的变更

我们首先来演示内容的变更,以yuyy-test-pkg为例

一、更新内容

index.js变更为:

module.exports = {
    printMsg: function () {
        console.log('this message is from yuyy-test-pkg!');
        
        console.log('the version of this package has updated!');
    }
}

二、更新版本

在演示版本变更前,我们先来了解一下npm版本相关的知识。

npm采用语义化版本,共三位,以’.’隔开,从左至右依次代表:主版本(major)、次要版本(minor)、补丁版本(patch)。

例如:
1.0.0
major.minor.patch

关于版本变更规范:
clipboard.png

变更版本号的命令:npm version <major | minor | patch>

假如我们本次是次要发布,我们执行命令:

npm version minor

执行结果:

clipboard.png

package.json中的version也已变为1.1.0:

{
  "name": "yuyy-test-pkg",
  "version": "1.1.0",
  "description": "my first npm package",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [
    "npm",
    "packge"
  ],
  "author": "yuyy",
  "license": "ISC"
}

三、发布

npm publish

结果:

clipboard.png

我们可以通过命令查看我们包的所有版本:

npm view yuyy-test-pkg versions

结果:

clipboard.png

四、安装更新

(1)切换到test-my-pkg目录下

npm up yuyy-pkg

结果:

clipboard.png

(2)执行index.js

 node index.js

输出结果:

clipboard.png

以上就是npm包迭代的过程,我们本次已unscoped包yuyy-test-pkg为例,对于scoped包的迭代过程没有差异。
在下一篇文章《npm发布包教程(五):废弃/删除》中我们将演示npm的废弃和删除。

相关文章:
1.《npm发布包教程(一):从npm说起》
2.《npm发布包教程(二):发布包》
3.《npm发布包教程(三):安装发布包》
4.《npm发布包教程(四):迭代》
5.《npm发布包教程(五):废弃/删除》


yuyongyu
921 声望41 粉丝

一个前端