位置: IT常识 - 正文

使用VitePress搭建及部署vue组件库文档(virtono搭建教程)

编辑:rootadmin
每个组件库都有它们自己的文档。所以当我们开发完成我们自己的组件库必须也需要一个组件库文档。如果你还不了解如何搭建自己的组件库可以看这里->从零搭建Vue3组件库。看完这篇文章你就会发现原来搭建和部署一个组件库文档是那么的简单。当然部署也不需要你有自己的服务器,你只要有github即可。由于我们的组件 ...

推荐整理分享使用VitePress搭建及部署vue组件库文档(virtono搭建教程),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vite搭建vue3,vijos搭建,vijos搭建,vtrul vps搭建教程,virtono搭建教程,virtono搭建教程,搭建vcenter,vite搭建项目,内容如对您有帮助,希望把文章链接给更多的朋友!

每个组件库都有它们自己的文档。所以当我们开发完成我们自己的组件库必须也需要一个组件库文档。如果你还不了解如何搭建自己的组件库可以看这里->从零搭建Vue3组件库。看完这篇文章你就会发现原来搭建和部署一个组件库文档是那么的简单。当然部署也不需要你有自己的服务器,你只要有github即可。由于我们的组件库还没有完成,所以下面就以element-plus作为示例来搭建一个文档吧。

安装vitepress

首先新建文件夹就叫kittydocs,执行pnpm init初始化,然后安装vitepress

pnpm add vitepress -D

在package.json添加一些script

"scripts": { "docs:dev": "vitepress dev docs", "docs:build": "vitepress build docs", "docs:serve": "vitepress serve docs" }

安装组件库element-plus

pnpm i element-plus -S目录结构

新建kittydocs目录,其中文件结构如下图

.vitepress/config.js为配置文件.vitepress/theme/index.js为自定义主题examples作为为组件示例目录public是公共文件目录index.md则是组件库文档的首页gulild放我们组件指南文档文档首页

首先我们按照官网的样式给我们组件库整个首页,在index.md文件中写入

---layout: hometitle: KittytitleTemplate: 一个Vue3组件库hero: name: Kitty text: 一个Vue3组件库 tagline: 没啥特点仅供学习 image: src: /logo.png alt: Kitty actions: - theme: brand text: 开始 link: /guide/ - theme: alt text: 在 Gitee 上查看 link: https://gitee.com/geeksdidi/kittyuifeatures: - icon: ? title: Vue3组件库 details: 基于vite打包和TypeScript开发 - icon: ? title: 仅供学习使用 details: 倾向于Vue3组件库的学习,请勿用于实际生产项目 - icon: ?️ title: 按需引入 details: 直接支持按需引入无需配置任何插件。---

然后pnpm run docs:dev启动我们的项目,我们就可以看到这样的画面

是不是感觉已经有点组件库文档的意思了。接下来对导航栏以及我们们文档的侧边栏进行一个配置。

配置导航栏配置export default { themeConfig: { siteTitle: false, logo: "/logo.png", nav: [ { text: "指南", link: "/guild/installation" }, { text: "组件", link: "/examples/button/" }, ], socialLinks: [{ icon: "github", link: "https://gitee.com/geeksdidi" }], },}

我们在config.js中配置我们的logo、导航栏以及社交链接。此时我们的导航栏便配置完成

侧边栏

首先我们对指南的侧边栏做一个配置

sidebar: { "/guild/": [ { text: "基础", items: [ { text: "安装", link: "/guild/installation", }, { text: "快速开始", link: "/guild/quickstart", }, ], }, { text: "进阶", items: [ { text: "xx", link: "/xx", }, ], }, ], },

同时我们在guild目录下新建installation.md和quickstart.md文件。接下来分别在这两个文件中介绍我们组件库的安装以及使用(这里将Element Plus当作我们自己的组件KittyUI)

installation.md# 安装## 环境支持由于 Vue 3 不再支持 IE11,KittyUI 也不再支持 IE11 浏览器。## 版本Element Plus 目前还在开发迭代中## 使用包管理器建议您使用包管理器 (NPM, Yarn, pnpm) 安装 KittyUI, 然后您就可以使用打包工具,例如 Vite 和 webpack# 选择一个你喜欢的包管理器# NPM$ npm install kitty-ui --save# Yarn$ yarn add kitty-ui# pnpm$ pnpm install kitty-ui## 浏览器直接引入暂不支持quickstart.md# 快速开始本节将介绍如何在项目中使用 KittyUI## 用法...<template> <Button>按钮</Button></template><script setup> import { Button } from 'kitty-ui'</script>...

这时候我们文档的效果如下

使用VitePress搭建及部署vue组件库文档(virtono搭建教程)

接下来我们对组件的侧边栏做一个配置,和指南一样,我们只需要在sidebar下再加个/examples/路径即可

"/examples/": [ { text: "基础组件", items: [ { text: "Button按钮", link: "/examples/button/", }, { text: "Icon图标", link: "/examples/Icon/", }, ], }, ],

vitepress中markdown文件中是可以直接使用vue组件的,我们先在theme/index全局引入element-plus

// .vitepress/theme/index.jsimport DefaultTheme from "vitepress/theme";import "element-plus/dist/index.css";export default { ...DefaultTheme, enhanceApp: async ({ app, router, siteData, isServer }) => { // app is the Vue 3 app instance from `createApp()`. router is VitePress' // custom router. `siteData`` is a `ref`` of current site-level metadata. import("element-plus").then((module) => { app.use(module); }); },};

这里我们拿Button做一个演示,在button/index.md中我们可以直接这样使用Button组件

<el-button>默认按钮</el-button><br/><br/><el-button>默认按钮</el-button><br/><br/><el-button type="primary">主要按钮</el-button><br/><br/><el-button type="success">成功按钮</el-button><br/><br/><el-button type="info">信息按钮</el-button>

此时我们页面即可展示我们的Button按钮

基于此,我们便可以轻松使用markdown文件的形式来编写我们的组件使用文档了。代码有点长,这里就贴一部分代码展示与隐藏的实现部分

完整的md文档你可以点击 index.md 直接查看。最后展示效果如下

其它组件实现方法基本一致,这里就不再一一实现了,接下来就是将我们的组件库文档部署到github的静态服务上了

部署到GitHub Pages

既然要部署到GitHub Pages,你得先在github新建一个仓库,因为要用他的GitHub Pages,所以仓库命名为username.github.io的形式,username是你github的用户名。然后点击设置

选择pages

这里设置根目录/(root),当然也可以选择其它目录,点击保存,如果选择其它目录比如docs,config.js就需要配置一个base

export default { base:'/docs/' }

最后选择一个主题(这里不选择我发现站点不生效,后面把打包后的代码推上来即可,会默认加载index.html)

然后将打包后的dist下的文件推送到你的远程仓库。vitepress官网给我们提供了一个脚本文件deploy.sh,我们只需要改下远程仓库即可

#!/usr/bin/env sh# 忽略错误set -e# 构建npm run docs:build# 进入待发布的目录cd docs/.vitepress/dist# 如果是发布到自定义域名# echo 'www.example.com' > CNAMEgit initgit add -Agit commit -m 'deploy'# 如果部署到 https://<USERNAME>.github.io# git push -f git@github.com:<USERNAME>/<USERNAME>.github.io.git master# 如果是部署到 https://<USERNAME>.github.io/<REPO># git push -f git@github.com:<USERNAME>/<REPO>.git master:gh-pagescd -

直接执行这个脚本文件,我们的打包后的文件就会被推送到我们的仓库。然后我们就可以直接访问我们的文档站点了.如果你想要自定义其它域名的话,可以创建一个组织然后在组织下新建仓库名为organization.github.io的形式(organization是你组织名)然后执行同样的操作即可。具体可以点这里创建 GitHub Pages 站点最后代码已经推送到KittyUIDocs,需要的可以自行获取

创作不易,你的点赞就是我的动力!如果感觉这篇文章对你有帮助的话就请点个赞吧,谢谢谢!!

本文链接地址:https://www.jiuchutong.com/zhishi/313185.html 转载请保留说明!

上一篇:织梦调用列表页、文章页评论数和收藏数代码(织梦相关文章调用)

下一篇:Spring(十四):SpringAOP及AOP的三种实现方法(spring10)

  • 红米k30关机键在哪个位置(红米k30关机键在哪)

    红米k30关机键在哪个位置(红米k30关机键在哪)

  • 电视ipoe账号密码是什么(电视账号设置密码忘了怎么办)

    电视ipoe账号密码是什么(电视账号设置密码忘了怎么办)

  • 为什么打印出来的表格是斜的(为什么打印出来的内容不全)

    为什么打印出来的表格是斜的(为什么打印出来的内容不全)

  • 无线网需要认证怎么回事(无线网需要认证登录怎么解决)

    无线网需要认证怎么回事(无线网需要认证登录怎么解决)

  • 256kbps是多少网速(256kbps是什么意思吗)

    256kbps是多少网速(256kbps是什么意思吗)

  • 笔记本突然断电式关机(笔记本突然断电后开不了机)

    笔记本突然断电式关机(笔记本突然断电后开不了机)

  • 京喜是京东的吗(京喜就是京东吗)

    京喜是京东的吗(京喜就是京东吗)

  • 钉钉直播回放橙色是什么意思(钉钉直播回放在哪)

    钉钉直播回放橙色是什么意思(钉钉直播回放在哪)

  • 电脑打字会跳到别的界面(电脑打字跳到左上角)

    电脑打字会跳到别的界面(电脑打字跳到左上角)

  • iphone无服务怎么恢复运营商(iphone无服务怎么恢复)

    iphone无服务怎么恢复运营商(iphone无服务怎么恢复)

  • 监控怎么删除一段视频(监控怎么删除一个月的)

    监控怎么删除一段视频(监控怎么删除一个月的)

  • mdt6是什么手机(mde6是什么型号)

    mdt6是什么手机(mde6是什么型号)

  • 笔记本发出滋滋声音(笔记本发出滋滋滋的声音然后死机)

    笔记本发出滋滋声音(笔记本发出滋滋滋的声音然后死机)

  • 苹果七机身多少厘米(苹果七机身厚度是多少)

    苹果七机身多少厘米(苹果七机身厚度是多少)

  • 京东怎么取消评价(京东怎么取消评价晒单)

    京东怎么取消评价(京东怎么取消评价晒单)

  • 快手直播伴侣看不到字幕(快手直播伴侣看不到互动消息)

    快手直播伴侣看不到字幕(快手直播伴侣看不到互动消息)

  • 如何从qq音乐知道qq号(如何从qq音乐知道别人qq号)

    如何从qq音乐知道qq号(如何从qq音乐知道别人qq号)

  • 如何在头像上加上国旗(怎么在头像加字)

    如何在头像上加上国旗(怎么在头像加字)

  • 初中入团申请书怎么写(初中入团申请书1000字左右)

    初中入团申请书怎么写(初中入团申请书1000字左右)

  • iphone11蜂窝网络怎么设置(iphone11蜂窝网络慢)

    iphone11蜂窝网络怎么设置(iphone11蜂窝网络慢)

  • 手机屏幕老化的表现(手机屏幕老化的图片)

    手机屏幕老化的表现(手机屏幕老化的图片)

  • 苹果x自带无线耳机吗(苹果x自带无线充电功能吗)

    苹果x自带无线耳机吗(苹果x自带无线充电功能吗)

  • 探探真实头像认证会显示出来吗(探探真实头像认证是人工审核吗)

    探探真实头像认证会显示出来吗(探探真实头像认证是人工审核吗)

  • 百度云盘手机如何离线下载(百度云盘手机如何解压)

    百度云盘手机如何离线下载(百度云盘手机如何解压)

  • 苹果主板漏电有什么症状(主板漏电原因 iphone)

    苹果主板漏电有什么症状(主板漏电原因 iphone)

  • iphonea1700是苹果几(iphonea1700是哪款)

    iphonea1700是苹果几(iphonea1700是哪款)

  • phpcms不允许上传该类型文件怎么办(php.ini上传限制)

    phpcms不允许上传该类型文件怎么办(php.ini上传限制)

  • 国际反避税措施
  • 存货跌价准备影响当期损益吗
  • 记账王怎么查询凭证
  • 企业会计准则颁布部门
  • 企业买车算固定收入吗
  • 个税申报系统跟工资表累计扣除数不一致怎么办
  • 附加税是当月计算吗
  • 洒水车计提折旧会计分录
  • 社保基数3125交多少钱
  • 去年的增值税普票能作废吗?
  • 购入固定资产一次性扣除
  • 资产负债表中流动性从高向低
  • 企业增加注册资金怎么办理
  • 银行本票支付货款,余额退回
  • 存在标的的资产是什么意思
  • 可供出售交易性金融资产申报表怎么填
  • 企业怎么办税
  • 前期差错更正处理方法
  • 汽车销售服务费话术
  • 预收账款属于金融资产吗为什么
  • 固定资产报废账目
  • 速动资产不包括存货和预付账款
  • 运费的发票
  • 资产损失税前扣除
  • 不交社保是否可以马上辞职
  • 药店销售小票要保存多久
  • win7 扫描仪
  • 鸿蒙工具箱使用视频
  • docker 使用教程
  • 营改增之前的业务怎么缴税
  • 涉税服务实务重点总结
  • 资本化的后续支出包括哪些项目
  • 相思树学名叫什么
  • 资产减值损失影响当期利润吗
  • JS XMLHttpRequest对象详解
  • thinkphp d
  • 补计提去年所得税费用会计分录
  • 花卉苗木栽培技术
  • 车间管理人员为什么是制造费用
  • 退票产生的费用如何报销
  • 终止合约取得的合约
  • 研发费用凭证是什么样
  • 主管盾和制单盾是是转账使用的U盾吗?
  • 借调是原单位发工资吗
  • 个人收到承兑汇票
  • 增值税发票品名 归类
  • 个体工商户个税多久申报一次
  • 股权转让完税证明图片
  • 计提成本后如何冲回
  • 公司注销怎么做
  • 出差补贴算工资吗
  • 医保卡里收入和余额不一样
  • 非税收入专用票据包括什么
  • 利润都为负数时增长比例怎么算
  • 本年利润的年末余额
  • 企业利润分配明细表
  • 没有发票财务报表怎么做
  • 公章变更需要到哪里办理
  • 如何查企业是否有问题
  • w10预览版新功能
  • U盘安装centos7步骤
  • dgservice.exe是什么
  • 命令行批量重命名
  • 虚拟机打不开linux
  • MSupdate.exe - MSupdate是什么进程 有什么用
  • 时间服务器ip 端口
  • linux查找文件语句
  • 铁嘴王指什么动物
  • 基于web的学生成绩管理系统毕业论文
  • opengl深度值与z值
  • css checked
  • csx脚本
  • 网页中实现浏览的快捷键
  • javascript简单代码
  • Javascript字符串对象函数
  • 现在小规模开专票多少钱
  • 曲靖市税务局领导班子
  • 个体工商户怎样交税
  • 新车交购置税的流程图
  • 租赁费的税率是多少小规模纳税人
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设