关键更新全新升级主题风格系统软件

lxf2023-03-16 16:27:02

关键更新全新升级主题风格系统软件

dumi 1.0 在 2020 年 3 月 2 日正式公布,到现在一共有 80 位 Contributor、递交 1100 Commit、为近 4000 个开源软件带来了组件库/站点文本文档计划方案;dumi 作为一个 GitHub 数千万开源软件里的微不足道一粒,会有那么多人共同努力、可以为那么多项目提供使用价值,可谓是十分幸运地。

与这一份好运一同来临,还有很多感受难题的反馈、部件产品研发的探索、具体工程项目的情景,再加上小区的底层技术栈还在飞快迭代更新,现在是时候给 dumi 做一次全面升级了,因此我们在今年 7 月 29 日全面启动了 dumi 2.0 的开发,但在今日,它总算和大家宣布见面!

关键更新

全新升级主题风格系统软件

先晒一下一个全新的默认主题,而且也是主题风格全面的一部分:

关键更新全新升级主题风格系统软件

除开更精致之外,dumi 2 活动的主题系统软件还提供如下所示水平。

主题风格适用部分遮盖

在 dumi 1 里,想订制侧栏就必须要覆盖整个 Layout,成本费很高; dumi 2 参照 Docusaurus 的 Swizzing 设计方案、带来了 slots(UI 扩展槽)特点,只需在新项目里建立 .dumi/theme/slots/{SlotName} 就可以做到相匹配 slot 的部分遮盖,并且提供什么 slots 是通过主题包决定的,在保证开放式的与此同时、在很大程度上减少了订制成本费。

内置全球化计划方案

在 dumi 1 里,主题包想要做多语种,只有自主分辨 locale 展现不一样文案; dumi 2 承诺主题包里的 locales/{lang-LOCALE}.json 文档为全球化创意文案,能被架构自动加载,主题包部件只必须从 dumi 里导出来 react-intl的有关 API,仅需启用创意文案 key 就可以实现创意文案的全球化。 值得一提的是,创意文案都是适用 key 覆盖,这就意味着客户如果要订制主题包给予文案,只需建立 .dumi/theme/locales{lang-LOCALE}.json 遮盖相匹配 key 文案就可以。

适用申请注册 dumi 软件

主题包很有可能伴随默认配置、甚至架构水平拓展,因此 dumi 2 承诺主题包的 plugin.tsplugin/index.ts 为主题包的软件、就会自动初始化,为主题包给予更强大的定制能力。

其他信息热烈欢迎换步官方文档查询:主题风格-如何运行。

内嵌全文检索

静态数据站点检索一直是棘手问题,小区一般就二种计划方案:

  1. 传统式文章的标题检索计划方案,由于形成 TOC 原本就必须收集文章标题,拿来当检索是自然而然的,那也是 SSG 框架的普遍作法,主要缺点能找到的物品过少
  2. 连接三方的站内搜索而且产出率预渲染的 HTML 和 sitemap.xml,好处就是能确保检索品质,主要缺点有一定门坎,比如 Algolia 那就需要申请办理 AppKey

听上去都有缺憾,但 dumi 2 此次增添了第 3 种计划方案,即不必须连接三方服务项目、又可完成全篇配对、还不会导致物质规格提升,才是真正开箱即用的全文检索计划方案!

关键更新全新升级主题风格系统软件

搜索的全过程在 Service Worker 内进行,这就意味着无需担心百度搜索配对引起兼容性问题、还可以线下布署,与此同时 dumi 也提供了检索 API、能够主题包订制百度搜索的表达。

承诺式路由器提高

dumi 1 被抨击较多的问题在于『路由器形成无法控制』,配备完不跑一跑还不知道长什么样子儿,因此 dumi 2 此次对承诺式路由器进行了 3 全面升级。

配备简单化

除掉 Markdown FrontMatter 里的 nav.pathgroup.path 配置项,最后路由器便是目标文件夹,简洁明了。

定义分割

将路由器分成『文本文档路由器』和『财产路由器』,文本文档路由器一般放到 docs 目录下,会嵌入等级,而财产路由器一般放到 src 下,不容易嵌入等级、且默认设置分类在某一作为前缀(例如 /components)下,例如:

docs/guide/getting-started.md 会形成 /guide/getting-started
src/Foo/index.md 会形成 /components/foo

之上分析路径和财产路由器作为前缀都可根据配备改动。

承诺式 Tab

适用以承诺式方式为 Markdown 具体内容提升 Tab,例如 index.$tab-key.md 便会做为 index.md 的 Tab 展现,能帮助我们能够更好地机构文本文档具体内容的表达:

关键更新全新升级主题风格系统软件

值得一提的是,Tab 还支持根据软件 API 申请注册,为其他功能的拓展带来了很有可能。

更加好的编译程序特性

dumi 2 根据结合使用 Umi 4 MFSU、esbuild、SWC、长久缓存文件等计划方案,产生比 dumi 1 更快地编译程序速率。

此外,dumi 2 也应用最新 Unified.js 绿色生态重新写过整个 Markdown 编译程序逻辑性,还提供对 remark 和 rehype 软件配置水平,在性能卓越的同时还更为便于订制。

变成符合要求的 SSG

dumi 1 尽管本质上是 SSG(Static Site Generator),但实际是出现异常两极分化的,此次把做好本职工作凑合做达标:

  1. 适用网页页面级 TDK 配备,且内嵌 Helmet 能做深层自定
  2. 内嵌 404 网页页面
  3. 默认设置静态化所有网页页面
  4. 适用根据 React@18 Stream 的建立时预渲染
  5. ……

自然达标依然还远远不够,也希望大家可以一起参与健全,毕竟是『为部件产品研发而生静态数据网站架构』,那么就部件研发与静态数据网站也不能落下来。

总算『有面儿』了

回忆起当时 dumi 取名字的一个过程,总觉得很特别,一个编号能是冷冰冰的英文字母,还可以是有温度呢称。

但是这么久以来,dumi 一直都使用的 Umi 的 LOGO,现在是时候借着 2.0 的升级版,给有温度呢称配上一张有温度脸孔了:

关键更新全新升级主题风格系统软件

这便是 dumi 的 LOGO,用过硬的文本文档扛起精美的部件,一定要记住它样子,假如是脸盲症就不强求了 :D

除了上述关键更新,dumi 2.0 还有很多的小细节改善,受制于篇数也就不再进行了,欢迎在评论区官方网站文本文档与实际使用时渐渐发现。

马上入门

假如是 dumi 1.x 项目,请见更新文本文档升级成 dumi 2:d.umijs.org/guide/upgra… 假如是准备新创建全新升级新项目,请直接应用 create-dumi 钢管脚手架:d.umijs.org/guide/initi…

后面整体规划

还有很多想做的事作用还没来得及做,dumi 2.0 公布之后还会新增加作用,也期望拥有更多的小区同学们一起参与,那样 dumi 2.1 很快就来临:

  • 手机端部件产品研发主题风格
  • Umi 4 新项目集成模式
  • 互动式的 API 报表
  • 部件 Playground
  • Vue 部件3D渲染适用
  • Monorepo 方案及良好实践
  • ……

感激

dumi 2 的出台离不了诸位小区开发者的奉献,谢谢你们让开源系统越来越幸福 :

  • PeachScript
  • wyy0521
  • miracles1919
  • xierenyuan
  • BoyYangzai
  • wangyi12358
  • sorrycc
  • mortalYoung
  • tangying1027
  • Dunqing
  • zhouzyc
  • yimingbot

Ant Design 5.0 在今天上午开展公布直播间,其新官网都是应用 dumi 2.0 构建的

关键更新全新升级主题风格系统软件