发布npm包
灵感胜于汗水 Lv5

注册账号

  • npm官网注册

  • 登录账号(需要npm镜像源为npm官方源)

    1
    2
    3
    4
    5
    npm config get registry //查看当前镜像源
    nrm use npm //使用npm官方镜像源(如果安装了nrm)
    npm config set registry https://registry.npmjs.org/ //使用npm官方镜像
    npm login //登录(输入账号密码、邮箱和验证码)
    npm adduser //效果同上
  • 查看当前账号

    1
    npm whoami

package.json

nameversion是必须的

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
{
"name": "xxx", //包名(要避免与npm上已有的包重名)
"version": "0.0.1", //版本号
//"private": true, //为true时,npm将拒绝发布该程序包
"type": "module", //使用es模块加载(默认值为commonjs)
"keywords": [], //关键词
"repository": { //关联的远程仓库
"type": "git",
"url": "https://github.com/xxx/xxx.git" //远程仓库url
},
"files": [ //指定要发布的文件夹或文件(默认发布所有文件,package.json始终会被发布)
"dist"
],
"main": "./dist/xxx.umd.js", //指定通过name被导入时的入口文件
"module": "./dist/xxx.es.js", //指定通过name被es模块导入时的入口文件
"types": "./dist/types/index.d.ts", //类型声明文件
"exports": { //定义导出的内容(main和module的替代品)
".": {
"types": "./dist/types/index.d.ts",
"import": "./dist/icons.es.js",
"require": "./dist/icons.umd.js"
}
},
"license": "MIT" //开源协议
}

发布

  • 发布前需切换至官方镜像源

    1
    2
    npm publish
    // 再次发布前需要将version版本号加一
  • 当发布name@开头的包时,npm默认发布私有包(私有包需要收费),使用如下命令发布为公开包

    1
    npm publish --access public
  • 发布beta版本(修改version,如0.0.1-beta.1

    1
    npm publish --tag=beta
  • 发布成功后登录npm官网即可看到自己发布的包

作废和撤销

  • 作废npm包,表示不在维护更新

    1
    npm deprecate <package-name> "<message>"
  • 撤销发布包(只能删除24小时内发布的最后一个版本)

    1
    npm unpublish <package-name> --force
  • 本文标题:发布npm包
  • 本文作者:灵感胜于汗水
  • 创建时间:2022-08-06 17:15:13
  • 本文链接:https://cjhsyc.github.io/2022/08/06/发布npm包/
  • 版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!