Skip to content

Latest commit

 

History

History
105 lines (68 loc) · 2.21 KB

README_CN.md

File metadata and controls

105 lines (68 loc) · 2.21 KB

vitepress-payload-extractor

提取 vitepress 打包后重复的有效元信息载荷


该项目已 block,因为 vitepress1.0.0-beta.6 已支持 metaChunk 选项


README 🦉

简体中文 | English


Motivation

我们团队正在使用 vitepress 来构建大型项目文档,但随着文档数量越来越多,html 页面的元信息 payload 也变得超大,所以我做了这个工具,它可以提取页面重复的 payload,减少包的体积。

通过它,我们团队生产环境下的文档从 255MB 降到了 94.4MB, 体积是原来的 37%。如果你也遇到了同样的窘境,也许你可以试试这个工具!


Usage

install

npm i vitepress-payload-extractor -D

Configuration

在你的 vitepress 配置文件中引入包

optimizeHtml

vitepress 打包过程中提取重复的元信息有效载荷,并压缩 html

import { defineConfig } from "vitepress";
import { optimizeHtml } from "vitepress-payload-extractor";

export default defineConfig({
  transformHtml(code) {
    return optimizeHtml(code);
  },
});

payloadExtraction

vitepress 打包过程中提取重复的元信息有效载荷

// .vitepress/config.js
import { defineConfig } from "vitepress";
import { payloadExtraction } from "vitepress-payload-extractor";

export default defineConfig({
  transformHtml(code, _, ctx) {
    return payloadExtraction(code, ctx.siteConfig.outDir);
  },
});

minifyHtml

压缩 html,但兼容 vitepress

import { defineConfig } from "vitepress";
import { minifyHtml } from "vitepress-payload-extractor";

export default defineConfig({
  transformHtml(code) {
    return minifyHtml(code);
  },
});

灵感来源


License

Made with markthree

Published under MIT License.