位置: 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)

  • 转让无形资产可以免税吗
  • 税局退回附加税账务处理办法
  • 房地产企业样板间装修费计入什么科目
  • 个人所得税10月突然增加了
  • 现金预算属于营业预算吗
  • 自然人个税申报错误怎么更改?
  • 销户之后可以重新申请吗
  • 发票专用章盖在收据上有法律效益
  • 出口税增加
  • 仓库常用包材
  • 车的违章处理
  • 行政单位的存货是什么
  • 法律关系的内容是指
  • 绿化工程企业所得税减免吗
  • 所得税汇算政策
  • 开具红字发票后发现购买方已做抵扣怎么办
  • 发票红冲需要用发票打印吗
  • 个税按计提申报还是按发放申报
  • 电子发票抬头打印怎么弄
  • 进项税额加计抵减如何申报
  • 住宿费本地的计入什么费
  • 公司支付给法院要交税吗
  • 驾校收入与成本的关系
  • 员工油费补贴过期怎么办
  • windows 10无法开机
  • 已入账的普通发票红冲后怎么做账
  • php fopen()
  • 企业内部研究开发项目开发阶段的支出
  • 微信小程序商城创建
  • 借管理费用贷应交税费个人所得税
  • 前端常见面试
  • 为什么说网络安全靠人民
  • php递归算法经典题目
  • spring5和6差别大吗
  • 跨年发票可以作为税前扣除的时限
  • python中的logging记录日志
  • 利润表中所得税费用为负数是什么意思
  • mysql好在哪里
  • 将原生html改成vue
  • 融资租赁手续费一次性还是摊销
  • 代扣代缴个人所得税奖励金
  • 什么是企业贷款余额
  • 收到费用报销单据应该怎么记账?
  • 进项加计抵减对账怎么做
  • 计提持有至到期债券投资的利息
  • 短期借款利息怎么做账
  • 购入固定资产印花税税目是什么
  • 机关单位工会经费的来源
  • 职工福利按工资的实付还是应付提取
  • 以前年度损益影响当期损益吗
  • 分销佣金账务处理流程
  • 补交增值税和滞纳金怎么入账
  • 基金可以一次性全部卖出吗
  • 免税店为什么没有发票
  • 会计估计变动怎么处理
  • 货物发出退货
  • 事业单位工会经费账务处理
  • 代扣代缴的增值税为什么可以抵扣
  • mysql 启动报错
  • Vista系统提高ADSL上网速度的两种设置方法
  • mac os x 10.12.2 Beta1怎么升级?macOS Sierra 10.12.2 Beta升级图文教程
  • 如何做电脑系统备份
  • 笔记本电脑自动断开
  • ubuntu搭建go环境
  • Mac系统中使用QuickTime Player实现屏幕录像图文教程
  • win8如何开启蓝牙
  • windows屏蔽网络设置的方法不包括以下哪种
  • kernel-headers-2.2.1-4
  • python怎么样学
  • Cocos2dx ParticleEditor粒子编辑器
  • 滚动的纸箱
  • jquery获取滚动条位置
  • linux中scp命令和scp命令用法大全
  • nodejs中间层的作用有哪些
  • JavaScript中的math.pi
  • javascript设计
  • 网上申报纳税小程序是啥
  • 山东地方税务局官网
  • 云税票管家是什么软件
  • 税务稽查查哪些
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设