Vue3组件库搭建5-发布

发布代码

首先需要注意一个问题,开源和发布代码是不一样的。

  • 开源代码:把你整个项目的源代码托管到诸如 github 或者 gitee 的地方,方便其他开发者可以看到你的源代码,从而进行膜拜和学习
  • 发布代码:其他项目可能需要使用到我们开发的代码,这种情况往往是使用的打包后的代码,也就是 dist 里面的代码,因此在发布的时候,我们往往只发布打包后的代码,并且发布的地方一般也是 npm 上面,这样其他的开发者就可以通过 npm install 的方式来安装我们的代码并使用

要将自己的代码发布到 npm 上面,有两个步骤:

  • 打包代码 ✅
  • 进行发布

首先我们需要对 package.json 进行一些配置工作,来配置我们要发布的文件有哪些(哪些文件要上传到 npm 上面)

  • 黑名单
  • 白名单

黑名单

在项目根目录下面创建一个 .npmignore 的文件,这个文件就类似于 .gitignore,文件里面记录哪些文件或者目录不上传

bash 复制代码
# .npmignore
src
tests

但是这种方式有一个弊端,就是一旦我们的源码发生了更改,增加了一些文件或者目录,但是这个 .npmignore 文件又没有及时的更新,就会导致一些原本不想上传到 npm 的文件或者目录上传上去。

白名单

所谓白名单模式,就是指名单里面出现的文件或者目录才会被上传至 npm。

在项目根目录下面的 package.json 中,增加 files 字段,该字段填写对应的要上传的 文件或者目录

json 复制代码
"files": [
    "/dist",
    "LICENSE"
],

之后我们就可以准备开始发布。

首先你需要核对一下你的镜像,如果你要上传到 npm 上面,那么镜像就应该修改会 npm 原本的镜像,如果你是搭建的私服,要上传到私服上面,那你修改为私服所对应的镜像

接下来既然你要上传到 npm 上面,那么需要你有一个 npm 的账号,之后在项目根目录通过 npm login 登陆这个账号,如下图所示:

最后只需要通过 npm publish 这个命令进行发布即可。

至此,我们就成功的将打包后的代码进行了发布。


测试: pnpm add fuxui-plus ,报错,说找不到

  • "@fuxui-plus/components": "workspace:*",

  • "@fuxui-plus/theme-chalk": "workspace:*",

  • "@fuxui-plus/utils": "workspace:*",

解决方案:将几个包的packge.json更新为作用域包,然后将版本号version都提升一次

js 复制代码
  "version": "1.0.1",
  "publishConfig": {
    "access": "public"
  }
  • 然后在打包
  • 然后要在npm上面新建组织
  • 然后再分别发布这两个子包
  • 然后再项目中执行,拉取包
  • pnpm i @fuxui-plus/theme-chalk
  • pnpm i @fuxui-plus/components
相关推荐
陈随易9 分钟前
副业搞钱点子之收入查看器
前端·后端
Profile排查笔记12 分钟前
浏览器指纹逆向怎么分析:从网络请求追踪到 JavaScript 采集链
前端·人工智能·后端·自动化
hudie76539 分钟前
LikeShop 二开最常改的 5 个文件(附改前改后对比)
前端·uni-app·php·个人开发
qetfw1 小时前
Bash 函数与流程控制:read、if、for、case 验证
linux·前端·javascript·bash
鬼手点金2 小时前
从 API 消息到模型 Token:Chat Template
java·前端·javascript·数据库·人工智能·深度学习·1024程序员节
Shadow(⊙o⊙)2 小时前
LangChain 自定义工具全解析:从 @tool 到 bind_tools 的完整调用链路
java·服务器·前端·1024程序员节
小poop2 小时前
HTML 基础入门:从结构到常用标签详解
前端
jiangliushi62 小时前
GPT-6.1 Sol 免费用:PowerShell 装 Codex 报“禁止运行脚本 npm.ps1”?一条命令解决
前端·gpt·npm
计算机魔术师3 小时前
日均500万亿词元,国内推理速度翻倍却仍落后国外——差距卡在哪
前端
excel3 小时前
用 Node.js 搭建一套可持续获客的 SEO 内容系统:前端工程师 30 天实战方案
前端·后端