umi插件开发【仿dumi项目】 - 项目介绍及基础环境搭建

lxf2023-05-22 01:35:49

前言

大家好,本次项目将通过仿照dumi来学习umi插件开发,dumi是基于umi实现的组件开发及组件文档生成框架。大家熟悉的ant-design就是基于dumi来生成文档站点。

本次学习将围绕dumi静态站点生成功能插件,通过从0开始构建项目,自己实现一个简易的文档生成框架。在学习过程中即可以探究dumi的实现原理,也能学习到umi插件的具体实用场景。

目录

  • 第一章:项目介绍及基础环境搭建
  • 第二章:实现基础路由解析
  • 第三章:实现页面布局
  • 第四章:自动生成导航栏
  • 第五章:加载markdown文件
  • 第六章:将markdown文件转为页面

基础环境搭建

本次项目项目名称就叫domi,先找个地方创建一个目录

mkdir domi && cd domi

使用pnpm创建umi项目(如果喜欢用npm/yarn可以根据umi官网 - 快速上手提示来创建项目)

pnpm dlx create-umi@latest

umi插件开发【仿dumi项目】 - 项目介绍及基础环境搭建

接下来选择项目模板,我这边使用如下配置

umi插件开发【仿dumi项目】 - 项目介绍及基础环境搭建

等待安装完成,运行即可启动umi项目

pnpm dev

umi项目快速浏览

umi插件开发【仿dumi项目】 - 项目介绍及基础环境搭建

配置文件

.umirc.ts是umi项目的配置文件,加载插件将在这里配置。

umi约定式开发

运行项目后可在浏览器看到上图界面,默认的页面分为两大部分,layout布局和page页面。

umi是通过约定的形式自动生成路由,因此我们项目代码可以免去配置路由信息,通过按约定规则直接写代码文件,即可自动生成路由和页面,默认页面对应的项目代码结构如下所示:

umi插件开发【仿dumi项目】 - 项目介绍及基础环境搭建

我们开发文档生成框架主要是用markdown来写文档说明,但是直接把markdown文件放在pages目录下是不会被解析成路由的。因此我们将在此基础上,通过开发插件来扩展umi的功能特性,使其能加载markdown并自动生成路由和页面。

其他

目前需要了解的umi知识就这些,如果有兴趣可以在UmiJS - 插件化的企业级前端应用框架来学习umi的其他知识。

本网站是一个以CSS、JavaScript、Vue、HTML为核心的前端开发技术网站。我们致力于为广大前端开发者提供专业、全面、实用的前端开发知识和技术支持。 在本网站中,您可以学习到最新的前端开发技术,了解前端开发的最新趋势和最佳实践。我们提供丰富的教程和案例,让您可以快速掌握前端开发的核心技术和流程。 本网站还提供一系列实用的工具和插件,帮助您更加高效地进行前端开发工作。我们提供的工具和插件都经过精心设计和优化,可以帮助您节省时间和精力,提升开发效率。 除此之外,本网站还拥有一个活跃的社区,您可以在社区中与其他前端开发者交流技术、分享经验、解决问题。我们相信,社区的力量可以帮助您更好地成长和进步。 在本网站中,您可以找到您需要的一切前端开发资源,让您成为一名更加优秀的前端开发者。欢迎您加入我们的大家庭,一起探索前端开发的无限可能!