Docz 用 MDX 写 React UI 组件文档

Docz 用 MDX 写 React UI 组件文档

前言

为了提升开发效率,创建一套 UI 组件库是一种较为有效的方式之一:可以减少重复工作、提高可复用,所以现在越来越多团队开始创建自己的 UI 组件库。较早的 Twitter 的 Bootstrap 虽然只能称为 UI 库,但也大大提升了开发效率。后面 MVVM 大行其道 ,前端终于可以把 HTML、CSS、JS 放在一起开发包含 UI 、交互真正意义上的组件了,现在有基于 ReactMaterial-UI、国内阿里金服基于 ReactAnt Design、饿了么基于 Vue.jsElement、TalkingData 基于 Vue.jsiView 等。有了这些 UI 组件,让前端开发变得前所未有的方便,完成一个项目就像是拿一块块的积木(组件)堆成一个完整项目。

考虑到前期开发 UI 组件的工作量及后期维护成本,我认为在大厂开源 UI 组件库的基础上个性化色彩(一般都提供颜色定制)、增加团队的个性化需求组件、减少不需要的组件是个不错的主意。

有了团队的 UI 组件库就少不了使用文档,毕竟文档还是比口口相传要靠谱的多。这里介绍一个可以快速创建 React UI 组件库使用、演示文档的项目:DoczDocz 的特色是零配置、简单、快速,它使用 Markdown 语法的扩展 MDX (在 Markdown 里引入 React 组件并渲染出组件)来书写文档,对于熟悉 Markdown 的开发者是可以直接上手的。下面贴一张官方的图看看有多简单:

左边是创建的 MDX 文档,右边是 Docz 渲染出的组件及组件代码。

是不是很方便?那下面简单介绍一下使用步骤。

使用

1. 在你的项目里安装 Docz:
yarn add docz --dev 或者 npm install docz --save-dev
2. 创建 .mdx 文件并输入:
---
name: Button
---

import { Playground, PropsTable } from 'docz'
import Button from './'

# Button

<PropsTable of={Button} />

## Basic usage

<Playground>
 <Button>Click me</Button>
 <Button kind="secondary">Click me</Button>
</Playground>
3. 运行:
yarn docz dev

然后就完成了一个简单的 Button 组件的演示、使用文档。

更多详情:http://www.docz.site/introduction/getting-started

配置

零配置方便是方便,但有时想界面个性化点还是很费事的(官方提供 Themes 支持,但现仅有一套官方的默认主题),下面分享一个通过引入本地 CSS 的方式来改变默认主题的配置。

1. 创建配置文件 doczrc.js,增加 htmlContext 内容。

更多配置:https://www.docz.site/documentation/project-configuration

export default {
  htmlContext: {
    head: {
      links: [
        { rel: 'stylesheet', href: '/base.css' }
      ]
    }
  }
}
2. .docz 目录下创建 public 文件夹并创建 base.css,在 base.css 里写自己的样式覆盖默认的即可。

最后

  • Docz 简单好用,但现在只支持 React。
  • Storybook 是一个更强大的集组件开发、查看、测试的文档工具,支持:
    • React
    • React Native
    • Vue
    • Angular
    • Polymer
    • Mithril
    • Marko
    • HTML
    • Svelte
    • Riot
  • Docsify搭配 Vuep 写 Playground
转载请注明出处: https://blog.givebest.cn/other/2018/09/15/react-ui-component-docz-mdx.html

原文地址:https://www.cnblogs.com/givebest/p/9652889.html

时间: 2025-01-06 20:00:07

Docz 用 MDX 写 React UI 组件文档的相关文章

读写Excel、WORD等微软OLE2组件文档的项目

NPOI 是?POI?项目的 .NET 版本.POI是一个开源的Java读写Excel.WORD等微软OLE2组件文档的项目. 使用 NPOI 你就可以在没有安装 Office 或者相应环境的机器上对 WORD/EXCEL 文档进行读写. ? Apache POI是一个开源的Java读写Excel.WORD等微软OLE2组件文档的项目.目前POI已经有了Ruby版本. 结构: HSSF - 提供读写Microsoft Excel XLS格式档案的功能. XSSF - 提供读写Microsoft

15. react UI组件和容器组件的拆分 及 无状态组件

1.组件的拆分 组件拆分的前提 当所有的逻辑都出现在一个组件内时 组件会变得非常复杂 不便与代码的维护 所以对组件进行拆分 IU组件 进行页面渲染 容器组件  进行逻辑操作 UI组件的拆分 新建一个 TodoListUI.js 将 TodoList 组件的 render 方法进行拆分封装为 UI 组件 其余的 TodoList 组件为 容器组件 # TodoListUI.js import  React, { Component } from 'react'; import 'antd/dist

组件文档-react-docz

推荐指数:???????? 一.参考 https://github.com/doczjs/docz 二.特性 1.支持性 目前仅支持react. 2.创建mdx文件 使用Markdown语法的扩展MDX(在Markdown里引入React组件并渲染出组件)来书写文档. 3.gatsby docz是在gatsby的基础上做文档. 4.可配置 支持自定义配置主题,可插拔插件. 5.支持typescript 全面支持typescript, 不需要额外配置. 6.构建飞速 热重载,代码分割. 三.开启新

vue mint ui 手册文档对于墙的恐惧

npm 安装 推荐使用 npm 的方式安装,它能更好地和 webpack 打包工具配合使用. npm i mint-ui -S CDN 目前可以通过 unpkg.com/mint-ui 获取到最新版本的资源,在页面上引入 js 和 css 文件即可开始使用. <!-- 引入样式 --><link rel="stylesheet" href="https://unpkg.com/mint-ui/lib/style.css"><!-- 引入

如何写好产品需求文档?

常常有人问我怎么写prd,在深受市面上流行的功能需求模板“残害”之后,我现在一般不会向别人推荐任何所谓的“模板”. 需求文档是产品需求的表达方式,而其中需要描述什么内容取决于产品经理想要描述什么,即产品经理的需求.如果产品经理的需求是明确的,而且产品经理脑中有物,那么需求文档自然而然就出来了.最可怕的是产品经理自己都不知道自己要描述的是什么内容,这个时候即使有模板,写出来的东西也是一团糟. 互联网产品以用户为中心,所以prd也应该站在用户的角度来描述,如果不知道自己要写什么,在写文档之前产品经理

怎么写网站的需求文档

网站需求分析怎么写,网站需要包含哪些基本要素?网站需求是网站建设方案的必备内容,涉及到网站框架.网站架构规划.网站页面设计要求.网站功能需求.网站技术说明,甚至还要包含网站建设的预算.网站建设的进度表等等. 一.网站框架图或网站地图的规划 使用专业的流程图绘制工具绘画出网站的框架图,让网站中各个页面.导航.栏目.版块都能够清晰的展现在图中,作为网站需求分析的总览图.更多关于网站建设的知识,请关注企赢001-中国最大的建站需求发布平台! 二.页面设计的需求总结 在网站需求分析中总结出哪些页面需要独

从零开始封装React UI 组件库并发布到NPM

1.新建目录wui (1)进入到 wui 目录 执行 npm init 命令初始化项目.更具提示信息填充将会生成的 package.json 文件. (2)新建 webpack.config.js 打包文件. (3)新建 README.md 项目说明文件. (4)新建 .gitignore 项目忽略文件. (5)安装webpack 用于编译 JavaScript 模块. npm install webpack webpack-cli --save-dev package.json 字段含义解释:

翻译React官网文档—— 入门创建一个Hello World

React的初衷是一个用于构建View层(界面)的javascript类库.后来规模越来越多又有了ReactNative. 不赘述如何搭建react了,由于是学习我们直接用CodePen(可能需要FQ,可以自行下载免费的Lantern),Codepen中我们可以自由的修改代码 通常学习任何语言都要写一个Hello World.Tack is cheep 直接上代码 Go! ReactDOM.render( <h1>Hello, world!</h1>, document.getEl

如何写md格式的文档

一.标题 标题其实和HTML中的h系列很像,想要设置为标题的文字前面加#来表示一个#是一级标题,二个#是二级标题,以此类推.支持六级标题. 注:标准语法一般在#后跟个空格再写文字, 示例: 效果如下: 这是一级标题 这是二级标题 这是三级标题 这是四级标题 这是五级标题 这是六级标题 二.字体 加粗 要加粗的文字左右分别用两个*号包起来 斜体 要倾斜的文字左右分别用一个*号或者用_包起来 斜体加粗 要倾斜和加粗的文字左右分别用三个*号包起来 删除线 要加删除线的文字左右分别用两个~~号包起来 示