搭建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/**'
相关推荐
朱 欢 庆2 小时前
云服务器附件备份到本机内网服务器
运维·服务器·前端·经验分享
支支დ8 小时前
VO by Vercel 前端特定优势:为什么它是构建 AI 应用的新范式
前端·人工智能
香芋芋圆8 小时前
AI 冲击内卷之下,普通前端如何破局?WebGIS—— 低门槛突围赛道
前端·javascript·人工智能·学习·职场发展
INS_KF9 小时前
【编程笔记】成员函数中两个 const 的区别(const Data &getData() const;)
前端·javascript·笔记
宿6749 小时前
vue3-async
前端·javascript·vue.js
YXWik69 小时前
记录前端请求接口在浏览器请求响应的Preview和Response展示的一样的问题
前端
2501_928996229 小时前
GPT-4o换DeepSeek迁移成本多少?中科热备解析API聚合平台技术账本
前端·数据库·人工智能
东风破_9 小时前
从跨域到 WebSocket:前端跨域方案、SSE 与双向实时通信详解
前端·后端
原则猫10 小时前
TS 类型工具
前端
excel10 小时前
Nuxt + Twin CSS 中宽度超过屏幕时底部出现空白的原因与解决方案
前端·javascript