搭建vue3组件库(一):Monorepo项目搭建

Monorepo

Monorepo 是一种项目代码管理方式,指单个仓库中管理多个项目,有助于简化代码共享、版本控制、构建和部署等方面的复杂性,并提供更好的可重用性和协作性。

pnpm

pnpm 全称 performant npm,意思为 高性能的 npm。pnpm 由 npm/yarn 衍生而来,解决了 npm/yarn 内部潜在的 bug,极大的优化了性能,扩展了使用场景。

安装pnpm

javascript 复制代码
npm install pnpm -g

初始化项目

在根目录执行

bash 复制代码
pnpm init

会自动生成package.json文件

bash 复制代码
{
  "name": "vision-ui-vue",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [],
  "author": "",
  "license": "ISC"
}

指定项目运行的Node版本

为了减少因node的版本的差异而产生开发环境错误,我们在package.json中增加engines字段来限制版本。

bash 复制代码
{
  "engines": {
      "node": ">=16",
    }
}

安全性设置

为了防止我们的根目录被当作包发布,我们需要在package.json加入如下设置:

bash 复制代码
{
  "private": true
}

包管理

在根目录新建 packages 用来存放组件库和其他工具库

在根目录新建 pnpm 的工作区文件 pnpm-workspace.yaml

vbnet 复制代码
packages:
    - 'packages/**'
相关推荐
涵涵(互关)9 分钟前
Naive-ui树型选择器只显示根节点
前端·ui·vue
BY组态18 分钟前
Ricon组态系统最佳实践:从零开始构建物联网监控平台
前端·物联网·iot·web组态·组态
BY组态22 分钟前
Ricon组态系统vs传统组态软件:为什么选择新一代Web组态平台
前端·物联网·iot·web组态·组态
SoaringHeart24 分钟前
Flutter进阶:OverlayEntry 插入图层管理器 NOverlayZIndexManager
前端·flutter
放下华子我只抽RuiKe534 分钟前
React 从入门到生产(四):自定义 Hook
前端·javascript·人工智能·深度学习·react.js·自然语言处理·前端框架
IT_陈寒2 小时前
Redis缓存击穿把我整不会了,原来还有这手操作
前端·人工智能·后端
idcu2 小时前
深入 Lyt.js 组件系统:L2 渲染引擎层的核心
前端·typescript
这是程序猿3 小时前
Spring Boot自动配置详解
java·大数据·前端
文心快码BaiduComate3 小时前
干货|Comate Harness Engineering工程实践指南
前端·后端·程序员
还有多久拿退休金3 小时前
一张栈的图,治好你面试答不出 script 阻塞的病
前端·javascript