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
相关推荐
不听话坏4 小时前
Ignition篇(下 一) 动态执行前的事情
开发语言·前端·javascript
likeyi074 小时前
require 和 import的区别
开发语言·前端
pany4 小时前
做 AI 友好的开源 Vue3 模板 🌈
前端·vue.js·ai编程
小二·5 小时前
React 19 + Next.js 15 现代前端开发实战:App Router / Server Components / 流式渲染
前端·javascript·react.js
谙忆10246 小时前
前端图片直传对象存储:OSS/S3 预签名 URL、STS 临时凭证与回调校验
前端
CHNE_TAO_EMSM7 小时前
Android studio 打开文件时自动下载源码
前端·javascript·android studio
一孤程8 小时前
Airtest自动化测试第五篇:小程序与Web测试——跨平台自动化全覆盖
前端·自动化测试·小程序·自动化·测试·airtest
IT_陈寒8 小时前
SpringBoot自动配置不是你以为的那样的智能
前端·人工智能·后端
yume_sibai9 小时前
大屏数据可视化 - 边框红绿呼吸灯实现详解
前端·信息可视化·typescript
Hyyy9 小时前
很多Desktop都在上的Computer Use是什么
前端·llm