代码改变世界

如何发布第一个属于自己的npm包 到公网

2019-02-26 09:58  muamaker  阅读(1098)  评论(0编辑  收藏  举报

发布前的准备

1. 注册一个npm账号

前往NPM官网进行注册

2. 创建一个简单的包

在本地创建一个项目文件夹 mannymu_demo (名字自己取,不要和NPM上已有的包名重复冲突就好)
然后通过终端进入文件夹(路径每个人不一样)

cd mannymu_demo

  

接着可以通过命令创建一个包信息管理文件package.json

npm init

  

一路回车即可

接着在 manny_demo文件夹里创建一个index.js文件,然后简单敲几行代码

;(function (global, factory) {
  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
    typeof define === 'function' && define.amd ? define(factory) :
      global.moduleName = factory()
}(this, (function () {
  var test = {
    sayHi: function () {
      console.log('hi');
    }
  };
 
  return test
})))

  

到这里一个简单的包就创建好了。
如果想再完善一下的话,还可以在包根目录下创建README.md文件,里面可以写一些关于包的介绍信息,最后发布后会展示在NPM官网上。

开始发布创建好的包

使用终端命令行
如果是第一次发布包,执行以下命令,然后输入前面注册好的NPM账号,密码和邮箱,将提示创建成功

首选,将自己的 npm 代理设置为,npm官网,不能使用淘宝镜像,否则会报错

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

  

npm adduser

 

如果不是第一次发布包,执行以下命令进行登录,同样输入NPM账号,密码和邮箱

npm login

  

注意:npm adduser成功的时候默认你已经登陆了,所以不需要再进行npm login了

接着先进入项目文件夹下,然后输入以下命令进行发布

 

npm publish

当终端显示成功之后就可以使用了

 

如果发布失败,很可能就是  npm 包名跟别人的冲突了

 

更新已经发布的包

更新包的操作和发布包的操作其实是一样的

npm publish

npm publish --access publish

但要注意的是,每次更新时,必须修改版本号后才能更新,比如将1.0.0修改为1.0.1后就能进行更新发布了。  

 

比如当前为 1.0.0

小改之后: 1.0.1

中改之后: 1.1.0

大改之后: 2.0.0

 

 

查看npm 包

登录官网,

  

能够看见自己发布的包,同时可以在其他项目中使用 npm i mannymu_demo 来安装,并使用了

 

 最后还原为 淘宝代理

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

  

三、删除版本

// 假设我的包名是test 测试版本号是1.0.0-beta.0
// 删除包的指定版本
npm unpublish test@1.0.0-beta.0 
 
// 强制删除包的指定版本
npm unpublish test@1.0.0-beta.0 --force
 
// 删除包
npm unpublish test
 
// 强制删除包
npm unpublish test --force

  

 

四、删除仓库