UzumakiItachi
首页
  • JavaSript
  • Vue

    • Vue2
    • Vue3
  • React

    • React_18
  • WebPack
  • 浏览器相关
  • 工程化相关
  • 工作中遇到的问题以及解决方案
  • Git
  • 面试
  • 学习
  • 心情杂货
  • 实用技巧
  • 友情链接
关于
  • 个人产出
  • 实用工具
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

UzumakiItachi

起风了,唯有努力生存。
首页
  • JavaSript
  • Vue

    • Vue2
    • Vue3
  • React

    • React_18
  • WebPack
  • 浏览器相关
  • 工程化相关
  • 工作中遇到的问题以及解决方案
  • Git
  • 面试
  • 学习
  • 心情杂货
  • 实用技巧
  • 友情链接
关于
  • 个人产出
  • 实用工具
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • WebPack

  • 浏览器相关

  • 工程化相关

    • 执行npm run dev的时候发生了什么
    • 仓库版本管理-standard-version
    • git版本管理以及生成changelog
    • 发布一个npm包
      • 注册Npm账号
      • 切换镜像源
      • 登陆账号
      • 发布
      • 错误总结
    • gitlab runner 免密码登录服务器
    • 实现一个小程序持续集成工具
    • 使用changeset管理monorepo项目
    • pnpm+trubo打造一个极致丝滑的monorepo工程
    • 编写一个生成git提交信息的vite插件
    • 关于构建SPA项目的一些优化
    • 实现一个简易的脚手架
    • vite搭建多页面项目
    • 实现一个可自定义模板内容的脚手架
  • 工作中遇到的问题以及解决方案

  • Git

  • Vite

  • 一些小工具

  • 算法

  • 服务器

  • HTTP

  • 技术
  • 工程化相关
hanhanbuku
2023-03-04
目录

发布一个npm包

# 注册Npm账号

首先需要去npm官网注册一个账号 https://www.npmjs.com/

# 切换镜像源

注册好账号之后,如果你本地使用的是淘宝的镜像,则需要将本地的npm源切换成npm自己的地址

查看当前镜像源
npm get registry
切换淘宝镜像源
npm config set registry http://registry.npm.taobao.org
切换npm源
npm config set registry https://registry.npmjs.org/
1
2
3
4
5
6

# 登陆账号

切换成npm源后打开终端,如果是第一次在本机发包,则先添加你的npm账号到本地。输入命令

npm adduser
1

img.png

输入你的用户名,回车,然后再输入密码

img.png

依次输入用户名 密码 邮箱 验证码,即可登陆成功。

如果不是第一次发包则直接npm login 登陆就行

# 发布

接着npm publish 发布即可

如果有不想发布出去的文件,就可以将它写入.gitignore 或.npmignore中,上传就会被忽略了

发布好之后就可以在npm上搜到你的包了。

img.png

记住每次发布的包版本号都需要变更,不然会导致发布失败。

# 错误总结

下面总结我在发布时遇到的几个发布失败的错误码,以及解决方法

  • 1、401

401一般就是你的账号密码输入有误导致的。自己核对后重新登陆即可

  • 2、402 这个问题一般是你尝试发布到公共范围导致的问题
npm ERR! code E402
npm ERR! 402 Payment Required - PUT https://registry.npmjs.org/.... - You must sign up for private packages
1
2

因为默认访问级别为私有。要解决此问题,可以设置npm config set access public或添加以下内容到package.json

{
  // ...
  // 添加以下
  "publishConfig": {
    "access": "public",
    "registry": "https://registry.npmjs.org/"
  }
  // ...
}
1
2
3
4
5
6
7
8
9
  • 3.403 一般出现403就表示你的包名已经被别人使用了。解决办法就是换一个包名。 但大多数时候我建议你将包放在一个唯一的域下,这样以后你的包就不会出现和别人重名的情况,一般这个域会以你的npm username为名,前面加上@。 例如 @username/xxx

  • 4.404 出现404的问题,就是你的组织未找到,也就是403状态码中解决办法提到的将包放到一个私有的域下。这个名字你当然不能胡乱写,npm会去搜索是否有这个名字,有的话将你本次的包添加到他下面,没有就会给你报404的错误了。所以大多数时候直接以你的npm 用户名就行了

以上就是本篇的全部内容

编辑 (opens new window)
上次更新: 2023/03/08, 09:35:38
git版本管理以及生成changelog
gitlab runner 免密码登录服务器

← git版本管理以及生成changelog gitlab runner 免密码登录服务器→

最近更新
01
前端检测更新,自动刷新网页
06-09
02
swiper渲染大量数据的优化方案
06-06
03
仿抖音短视频组件实现方案
02-28
更多文章>
Theme by Vdoing | Copyright © 2023-2025 UzumakiItachi | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式