
在 NPM 上发布自己的库
一、开始准备:
- 首先在npm官网注册帐号 npm官网
- 在项目根目录 初始化 package.json 文件,如果已存在则不需要
1
npm init
package.json 包含几个关键字段:
- name: 包名,必须唯一,不能跟npm上的包重名。可以在 npm 官网搜索名字,如果存在则需要换个名字
- version: 版本号,每次发布至 npm 都需要修改版本号,不能比上一次发布的版本号低
- description: 描述
- main: 入口文件,需指向我们编译后的包文件
- keyword: 搜索关键字
- author: 作者
- private: 是否私有,需要修改为 false 才能发布到 npm
- license: 开源协议
- 添加npm帐号授权需要输入帐号,密码,邮箱(注意需要先校验帐号绑定的邮箱才能授权成功)
1
npm adduser
通过以下命令可以查看是否授权成功:1
npm whoami
二、发布
- 发布普通package
1
npm publish
- 发布scope package
1
npm publish --access=public
scope-package 是npm的新特性,模块名带 @为指定作用域,每个用户都拥有自己的scope,如 @lzxc 为当前用户名
tips: 使用scope package好处是发布时package名不容易重复
三、删除包
1 | npm unpublish xxx |
删除后不能发布同名的包
tips:
npm unpublish 只能在发布后24h内有效,如果超过就需要找npm客服取消发布了
四、删除指定版本的包
1 | npm unpublish xxx@xxx |
删除后只能发布大于该删除包的版本号
结语:
- 确认使用npm的镜像源
- 预先检查发布包的文件内容,发布前可以通过 npm pack 查看将发布包的文件内容,一般都需要提前做好过滤文件,过滤 npm 提交规则使用 .npmignore 语法跟 .gitignore 类似,还可以
使用 npm link 可以参考以下文章:npm-使用npm link - 检查包名字是否与npm库中存在重复名字
- 检查版本号,每次发布都需要更新版本号,如果发布成功后发现版本号不对,可以参考以下文章: 删除包或指定版本包