Vue3 企业级优雅实战 - 组件库框架 - 8 搭建组件库 cli

【猿创征文】Vue3 企业级优雅实战 - 组件库框架 - 1 搭建 pnpm monorepo 前两篇文章分享了基于 vite3 vue3 的组件库基础工程和用于快速创建该工程的工具yyg-cli,但在中大型的企业级项目中,通常会自主搭建这些脚手架或加速器。优雅哥希望每位前端伙伴能知其所以然,故接下来的文章将进入Vue3 企业级优雅实战系列,整个系列将包括五大部分:首先会分享如何从 0 开始搭建一套组件库基础工程,即如何从 0 实现。 阅读详情

前面的文章分享了组件库的开发、example、组件库文档,本文分享组件库 cli 开发。

1 为什么要开发组件库 cli

回顾一个新组件的完整开发步骤:

1 在 packages 目录下创建组件目录 xxx:
1.1 使用 pnpm 初始化 package.json,修改 name 属性;
1.2 在该目录中创建 src 目录和 index.ts 文件;
1.3 在 src 目录下创建 types.ts 文件和 index.tsx / index.vue 文件;

2 在组件库的入口模块 packages/yyg-demo-ui:
2.1 使用 pnpm install 安装 1.1 创建的 xxx;
2.2 在 packages/xxx-ui/index.ts 中引入 xxx,并添加到 components 数组中;

3 packages/scss/components/ 目录:
3.1 在该目录下创建 _xxx.module.scss;
3.2 在该目录中的 index.scss 中引入 _xxx.module.scss;

4 组件库文档:
4.1 在 docs/components 目录下创建 xxx.md 文件;
4.2 在 docs/demos 目录下创建 xxx 目录,并在该目录中创建 xxx.vue 文件;
4.3 在 docs/components.ts 中添加组件菜单项;

该步骤是一个机械化的流程操作,涉及新建或修改十多个文件,费事费力,纯属体力活。这种情况下就可以使用工具替代咱们完成这些操作,开发一个 cli,执行命令、输入组件名就自动创建组件,完成上述操作,如此便可以将注意力集中到组件和业务的开发中。

2 开发 cli 使用到的技术

开发 cli 的库有很多,优雅哥在这里使用的还是最传统的技术栈,在下面使用的这些库时要注意版本号:

库 版本 作用
commander ^9.4.1 接收输入的命令,解析命令参数
chalk 4.1.2 控制台输出的文字颜色
inquirer 8.2.5 命令行交互,在命令行提示用户输入,获取到用户输入的内容
log-symbols 4.1.0 控制台输出的图标,如 success、failure 等状态
ora 5.4.1 在控制台显示 loading
shelljs ^0.8.5 执行 cmd 命令,如 cd、pnpm install 等

3 搭建 cli 开发框架

有了上面的知识准备,接下来就进入实战 cli:

3.1 初始化 cli 模块

在命令行中进入 cli 目录,依旧使用 pnpm 初始化:

pnpm init

修改生成的 package.json 文件 name 属性:

{
   
   
  "name": "@yyg-demo-ui/cli",
  "version": "1.0.0",
  "description": "命令行工具",
  "author": "程序员优雅哥",
  "license": "ISC"
}

在 cli 目录下创建 ts 配置文件 tsconfig.json:

{
   
   
  "compilerOptions": {
   
   
    "target": "es2015",
    "lib": [
      "es2015"
    ],
    "module": "commonjs",
    "rootDir": "./",
    "allowJs": true,
    "isolatedModules": false,
    "esModuleInterop": true,
    "forceConsistentCasingInFileNames": true,
    "strict": true,
    "skipLibCheck": true
  }
}

在 cli 目录下创建 index.ts 文件作为入口:

VuePC端UI组件库 Element Element,一套为开发者、设计师和产品经理准备的基于 Vue 2.0 的桌面端组件库 中文文档 | github地址 image 2. iView 一套基于 Vue.js 的高质量UI 组件库 中文文档 | github地址 image 3. vue-element-admin vue-element-admin是基于 Vue2.0,配合使用 Element UI 组件库的... 阅读详情

相关推荐

Vue组件库MSDesign:微软Fluent Design的Web实现

现代前端开发中,组件库作为UI开发的核心工具,显著提升了开发效率和一致性。基于微软Fluent Design System的MSDesign组件库,为Vue开发者提供了独特的价值。Fluent Design作为微软推出的设计语言,包含光线、深度等五大原则,特别适合需要与Windows生态保持一致的Web项目。该组件库采用Vue 2.x选项式API,支持CSS变量主题定制和无障碍访问,在企业级后台管理系统、高密度信息展示等场景表现突出。通过SFC单文件组件结构和按需加载机制,MSDesign在保证微软风格UI

weixin_31742871的博客 257

使用Bigemap下载地图流程

Bigemap地图下载简单流程,临时安排任务简单学习没有深入了解。

TKY666的博客 4848

AIR780E二次开发点灯(LuatOS)

Air780E的LuatOS点灯教程,二次开发教程,可用于所有ec618平台,无需SDK

rootuseres的博客 1万+

【血汗泪心路历程】怎么彻底删掉Sangfor文件?怎么彻底删除easyconnect?删除sangfor后网络坏了、某些app无法正常启动怎么解决?

教程来源于网络的五湖四海+gpt解答。用到了好几个教程和方法,遂这篇总结一下。会标明出处!先上一下战绩:终于把sangfor扔进回收站里了!!!哈哈哈那一刻真的好爽。

weixin_71246590的博客 6万+

2021哈工大网安837考研初试经验贴

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 欢迎使用Markdown编辑器 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar

weixin_41797880的博客 6523

PVT(Process Voltage Temperature)

芯片PVT

网始如芯个人博客 3万+

unity6000.0.3版本URP下ScriptableRendererFeature如何实现一张自定义贴图效果?

🏆本文收录于 《全栈 Bug 调优(实战版)》 专栏。专栏聚焦真实项目中的各类疑难 Bug,从成因剖析 → 排查路径 → 解决方案 → 预防优化全链路拆解,形成一套可复用、可沉淀的实战知识体系。无论你是初入职场的开发者,还是负责复杂项目的资深工程师,都可以在这里构建一套属于自己的「问题诊断与性能调优」方法论,助你稳步进阶、放大技术价值。

**My Coding Family** 585

【图像超分】论文复现:新手入门必备!Pytorch实现SRGAN!手把手详细教程!代码注释详尽!可用于训练自己的数据集!实时验证模型性能!绘制PSNR曲线图!附训练好的各放大倍数的模型权重文件!

【图像超分】论文精读:SRResNet/SRGAN【图像超分】论文复现:万字长文!Pytorch实现SRResNet代码修改无报错!踩坑全记录!适合各种深度学习新手!帮助你少走弯路!附修改后的代码和PSNR最优的模型权重文件!请配合上述论文精读文章使用,效果更佳!与原论文描述不一样的实现部分,也即可以修改的部分数据集使用:论文中是ImageNet随机选35000张图像,本文是VOC2012数据集16700张图像。数据集预处理:裁剪大小不同,论文是96×96,本文是88×88。

主要更新底层视觉(去噪、超分等)相关的科研内容,形式为【论文精读】+【论文复现】 6854

【32】软考软件设计师——算法题(一):分治法与动态规划深度精讲|下午第4题常考满分攻略

本文是《软件设计师·50讲通关|从零基础到工程师职称》专栏第32篇,正式开启**模块四:应用技术(下午题)算法大题专项**,聚焦下午第4道高频必考大题核心两大算法:分治法与动态规划。全文超4000字深度拆解两大经典算法的底层核心思想、算法策略识别技巧、递归边界设计、状态转移方程推导,全覆盖代码填空高频考点、时间复杂度分析、经典题型解题套路;配套可直接默写的递归代码模板、DP状态设计范式、真题完整填空案例,彻底解决考生分不清分治与DP、递归边界写错、状态转移推不出、复杂度算不对四大核心痛点。

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 639

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

上一篇: 【猿创征文】Vue3 企业级优雅实战 - 组件库框架 - 7 组件库文档的开发和构建
下一篇: Vue3 企业级优雅实战 - 组件库框架 - 9 实现组件库 cli - 上
程序员优雅哥
博客等级 码龄4年 52粉丝 58原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员优雅哥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值