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

  • 税控盘280怎么变398了
  • 什么是抄报税成功
  • 小规模零税率申报流程
  • 政府补助属于不征收收入汇算清缴怎么填写
  • 企业信用公示的时效是多久
  • 实收资本在报表中怎么看
  • 一般纳税人如何注销
  • 预收款方式销售货物
  • 影响年度损益的金额有哪些
  • 固定资产处置损益科目编码
  • 新办企业一定要社保登记吗
  • 申请100万增值税发票资格
  • 跨月红冲发票如何申报退税
  • 小微企业免税计入什么科目
  • 企业所得税职工薪酬扣除
  • 支付违约金未取得正规发票能不能在税前列支
  • 企业零申报怎么申报
  • 装修公司帮客户套现装修贷违法吗
  • 代扣代缴企业所得税申报期限
  • 房地产建造运费怎么计算
  • 个人账户可以转公户吗?
  • 印花税漏报了要罚款吗
  • 营改增后土地使用税计入什么科目
  • 税务实名制法人和财务负责人可以是同一人吗?
  • 有形动产租赁印花税税率是多少
  • 事业单位自用的房产
  • 成本利润率的计算公式中,成本费用总额包括
  • 已做了进项的发票金额错了怎么处理
  • 个体户季度超30万要交多少税
  • win10数字雨
  • 管理费用如何分摊到产品成本
  • 固定资产要办理什么手续
  • 运输费用会计科目
  • tracert命令的作用及用法
  • 在php中,字符串有哪些表示形式
  • nwtray.exe - nwtray是什么进程 作用是什么
  • 存货短缺的账务处理
  • PHP:mcrypt_enc_get_algorithms_name()的用法_Mcrypt函数
  • 租金收入会计分录怎么写
  • 会计核算方法体系构成
  • 税控盘维护费全额抵扣分录怎么做
  • 员工出差机票计入什么科目
  • 没有发票怎么做研发费用
  • 购车的车辆购置税怎么交
  • php 通信
  • 讯飞智能x2
  • 谁能代替你啊
  • route命令的作用
  • vant ui
  • 一般纳税人企业所得税如何计算
  • 结转费用类会计分录怎么写
  • 金融商品转让如何确定销售额
  • 企业缴纳印花税时需要
  • 实际费用以什么为准
  • 股权激励费用摊销意思是
  • 计提工资的会计账务处理
  • 新开的公司税务那边要办什么
  • sql server数据库跟踪
  • 怎么删除文件的隐藏属性
  • avc用什么打开
  • xp系统桌面图标不见了,点什么都没用?
  • ubuntudde 中文
  • mmc.exe是什么
  • win10搜索不到无线网卡
  • linux删除lun
  • perl中的$_
  • perl use vars pragma使用技巧
  • cocos2d怎么用
  • xml文件示例
  • crontab每秒执行一次命令
  • js函数调用常用字符串
  • js对象用法
  • jquery 动态绑定click事件
  • unity-gain
  • 安卓手机管家推荐
  • jquery获取指定元素
  • 国家税务总局令第43号公告
  • 煤炭资源税税率减半对上市公司影响
  • 上海地铁发票可以随便要吗
  • 怎么查询12345的验证码
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设