📖 閱讀本文大概需要 6 分鍾。
操作概覽
- 驗證你的包名是否重復。
- npm 官網注冊賬號(略)。
- npm init 初始化你的包。
- 發布 npm publish。
- 如何發布新版本?
- 如何刪除你的發布包?
- 什么是 2FA?什么是 Authenticator App?什么是 One-time Password?
- (后記)補充說明
一、驗證你的包名是否重復
有兩種方案:
(推薦)1、直接上 npmjs.com 官網搜索
2、也可以用一些工具庫查找,雖然有點畫蛇添足,但某些場景還是適用的。比如動態發布包。
二、npm 官網注冊賬號(略)
三、npm init 初始化你的包。
$ npm init -y
package.json
重點關注和修改以下三項:
- name:你的包名
- version:(推薦)用 jQuery 的版本規范:0.0.1
- main:你的入口文件
{
"name": "chuanghui-vue-portal", "version": "0.0.1", "main": "src/components/chuanghui-portal.vue", "description": "ChuangHui Vue Components", "author": "lizhaohong <928532756@qq.com>" }
四、發布 npm publish
先添加 npm 賬號
$ npm adduser
Username: ...
Password: ...
Email: (this IS public) 928532756@qq.com
Logged in as cylee on https://registry.npmjs.org/.
正式發布,就一句話。
$ npm publish
正常的話,在 npm 個人 package 頁面中可以看到上傳的包:
五、迭代新版本
只需要把你 package.json
的 version
版本號改變,如 0.0.1 -> 0.0.2,再執行 $ npm publish
即可。
六、刪除發布包
如果你和我一樣有強迫症,僅僅是修復一個 bug 就要把版本號從 0.0.1 升級到 0.02。
心里肯定很糾結,更多的可能是選擇刪掉包重新上傳。
網上介紹刪除發布包的方法倒也簡單。執行以下即可:
$ npm unpublish --force
但你可能出現 ERR:2FA
之類的錯誤信息?那你可能要先進行一大堆設置了,看下去吧。
七、什么是 2FA?什么是 Authenticator App?什么是 One-time Password?
簡單概括:
- 2FA: NPM 發布包管理的權限設置,可以在 NPM 后台配置;
- Authenticator App:是微軟 Microsoft 出品的一款實時密碼App,請自行到App商店搜索下載;
- One-time Password:Authenticator App 輸出的實時密碼。
具體設置步驟:官方教程
1、到 App 商店搜索並且下載 Microsoft Authenticator App.
2、進入 npm 后台,找到如圖所示:
3、選擇 [Authorization and Publishing] - [submit]
4、打開 Authenticator App,選擇 “添加賬戶” - “其他賬戶(Google、Facebook 等)”
5、掃描 步驟3
后的二維碼。
6、體驗 One-time Password。如圖所示
7、使用 One-time Password 刪除發布包。需要加上 --otp <One-time Password>
$ npm unpublish chuanghui-portal --force --otp 863613
八、(后記)
開通了 2FA 以后,你的賬號發布包$ npm publish
都是需要使用 One-Time Password的。
$ npm publish --otp 863613