npm 發布個人包時,遇到不少坑,總結如下(可能不全):
1、npm版本過低,處理:npm install -g npm update
2、可能權限原因,處理:npm publish --access=public
3、npm 源不對,處理:npm config set registry https://registry.npmjs.org/ -- 有些非官方源個人可能無權發布,比如淘寶鏡像需要admin權限
4、文件夾名和package.json里的'name'屬性一樣時也無法發布,處理:將文件夾名或'name'改成不一致即可
5、如果之前刪除過npm市場同名的包,重新發布會有一定的時間限禁(目前是24小時后)
6、記得檢查賬戶是否登錄
其他命令補錄:
1、npm init: 初始化包,會生成package.json,其里面的main屬性配置指向了入口文件
2、npm publish: 發布個人項目到npm上
a: 第一次發布時,需要創建用戶: npm adduser
b:常規用戶登錄:npm login
3、npm unpublish <pkg>@x.y.z -- 刪除某個版本 / npm unpublish xxxpackage -- 刪除整個版本(慎用!)
npm unpublish的推薦替代命令: npm deprecate <pkg>[@version] <message>
使用這個命令,並不在社區里撤銷你已有的包,但是在任何人嘗試安裝這個包時,會得到告警
【注意】如果報權限方面的錯誤,加上參數: --force