48 lines
46 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!doctype html><html lang="zh-CN"><head><meta charset="utf-8" /><meta name="viewport" content="width=device-width,initial-scale=1" /><meta name="generator" content="VuePress 2.0.0-rc.28" /><meta name="theme" content="VuePress Theme Plume 1.0.0-rc.194" /><script id="check-mac-os">document.documentElement.classList.toggle('mac', /Mac|iPhone|iPod|iPad/i.test(navigator.platform))</script><script id="check-dark-mode">;(function () {const um= localStorage.getItem('vuepress-theme-appearance') || 'auto';const sm = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches;const isDark = um === 'dark' || (um !== 'light' && sm);document.documentElement.dataset.theme = isDark ? 'dark' : 'light';})();</script><script type="application/ld+json">{"@context":"https://schema.org","@type":"Article","headline":"1.0.0-rc.73 至 rc.77 更新说明","image":[""],"dateModified":"2025-10-07T15:13:09.000Z","author":[]}</script><meta property="og:url" content="https://theme-plume.vuejs.press/article/5vjshyi9/"><meta property="og:site_name" content="Plume 主题"><meta property="og:title" content="1.0.0-rc.73 至 rc.77 更新说明"><meta property="og:description" content="近期的这几个版本主要围绕 实现单独的主题配置文件 ,监听并支持热更新。 Breaking Changes 以下内置插件被移除: 移除 @vuepress-plume/plugin-blog-data 插件 移除 @vuepress-plume/plugin-notes-data 插件 移除 @vuepress-plume/plugin-auto-fro..."><meta property="og:type" content="article"><meta property="og:locale" content="zh-CN"><meta property="og:updated_time" content="2025-10-07T15:13:09.000Z"><meta property="article:modified_time" content="2025-10-07T15:13:09.000Z"><link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png"><link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png"><meta name="google-site-verification" content="AaTP7bapCAcoO9ZGE67ilpy99GL6tYqtD30tRHjO9Ps"><title>1.0.0-rc.73 至 rc.77 更新说明 | 博客 | Plume 主题</title><meta name="description" content="近期的这几个版本主要围绕 实现单独的主题配置文件 ,监听并支持热更新。 Breaking Changes 以下内置插件被移除: 移除 @vuepress-plume/plugin-blog-data 插件 移除 @vuepress-plume/plugin-notes-data 插件 移除 @vuepress-plume/plugin-auto-fro..."><link rel="preload" href="/assets/style-BGtb9b_n.css" as="style"><link rel="stylesheet" href="/assets/style-BGtb9b_n.css"><link rel="modulepreload" href="/assets/app-CponcA4I.js"><link rel="modulepreload" href="/assets/plugin-vue_export-helper-CxTVcLa7.js"><link rel="modulepreload" href="/assets/chunk-DseTPa7n.js"><link rel="modulepreload" href="/assets/preload-helper-ca-nBW7U.js"><link rel="modulepreload" href="/assets/composables-LadtrrgZ.js"><link rel="modulepreload" href="/assets/VPHomeHero-DWhHhzVg.js"><link rel="modulepreload" href="/assets/composables-Dy7xAEJk.js"><link rel="modulepreload" href="/assets/client-DIGNuIZ_.js"><link rel="modulepreload" href="/assets/theme-colors-bZHGy5AR.js"><link rel="modulepreload" href="/assets/VPButton-DJaiL7ma.js"><link rel="modulepreload" href="/assets/runtime-core.esm-bundler-CZvn3YaB.js"><link rel="modulepreload" href="/assets/runtime-dom.esm-bundler-DTRCDnrc.js"><link rel="modulepreload" href="/assets/dist-CMy7OcvW.js"><link rel="modulepreload" href="/assets/codeRepl-DjcuOnVB.js"><link rel="modulepreload" href="/assets/VPCopyright-DUWF61Ht.js"><link rel="modulepreload" href="/assets/73-77-CHAzzHE8.js"></head><body><div id="app"><!--[--><!--[--><div class="theme-plume vp-layout" vp-container data-v-a5aadcf6><!--[--><!--[--><!--]--><!--[--><span tabindex="-1" data-v-26bc9d93></span><a href="#VPContent" class="vp-skip-link visually-hidden" data-v-26bc9d93> Skip to content </a><!--]--><!----><header class="vp-nav" data-v-a5aadcf6 data-v-f81e37e9><div class="vp-navbar" vp-navbar data-v-f81e37e9 data-v-b90976a4><div class="wrapper" data-v-b90976a4><div class="container" data-v-b90976a4><div class="title" data-v-b90976a4><div class="vp-navbar-title" data-v-b90976a4 data-v-f77fe1b1><a class="vp-link link no-icon title" href="/" data-v-f77fe1b1><!--[--><!--[--><!--]--><!--[--><!--[--><!--[--><img class="vp-image dark logo" style="" src="/plume.png" alt data-v-414baac9><!--]--><!--[--><img class="vp-image light logo" style="" src="/plume.png" alt data-v-414baac9><!--]--><!--]--><!--]--><span data-v-f77fe1b1>Plume 主题</span><!--[--><!--]--><!--]--><!----></a></div></div><div class="content" data-v-b90976a4><div class="content-body" data-v-b90976a4><!--[--><!--]--><div class="vp-navbar-search search" data-v-b90976a4><div class="search-wrapper" data-v-62419745><!----><div id="local-search" data-v-62419745><button type="button" class="mini-search mini-search-button" aria-label="搜索文档" data-v-62419745><span class="mini-search-button-container"><span class="mini-search-search-icon vpi-mini-search" aria-label="search icon"></span><span class="mini-search-button-placeholder">搜索文档</span></span><span class="mini-search-button-keys"><kbd class="mini-search-button-key"></kbd><kbd class="mini-search-button-key">K</kbd></span></button></div></div></div><!--[--><!--]--><nav aria-labelledby="main-nav-aria-label" class="vp-navbar-menu menu" data-v-b90976a4 data-v-b42927e7><span id="main-nav-aria-label" class="visually-hidden" data-v-b42927e7>Main Navigation</span><!--[--><!--[--><a class="vp-link link navbar-menu-link" href="/guide/intro/" tabindex="0" data-v-b42927e7 data-v-29cf8989><!--[--><span class="vp-icon vpi-icon-park-outline-guide-board" style="" aria-hidden data-provider="iconify" data-v-29cf8989></span><span data-v-29cf8989>指南</span><!----><!--]--><!----></a><!--]--><!--[--><a class="vp-link link navbar-menu-link" href="/config/intro/" tabindex="0" data-v-b42927e7 data-v-29cf8989><!--[--><span class="vp-icon vpi-icon-park-outline-setting-two" style="" aria-hidden data-provider="iconify" data-v-29cf8989></span><span data-v-29cf8989>配置</span><!----><!--]--><!----></a><!--]--><!--[--><a class="vp-link link navbar-menu-link active" href="/blog/" tabindex="0" data-v-b42927e7 data-v-29cf8989><!--[--><span class="vp-icon vpi-material-symbols-article-outline" style="" aria-hidden data-provider="iconify" data-v-29cf8989></span><span data-v-29cf8989>博客</span><!----><!--]--><!----></a><!--]--><!--[--><a class="vp-link link navbar-menu-link" href="/demos/" tabindex="0" data-v-b42927e7 data-v-29cf8989><!--[--><span class="vp-icon vpi-map-wind-surfing" style="" aria-hidden data-provider="iconify" data-v-29cf8989></span><span data-v-29cf8989>案例</span><!----><!--]--><!----></a><!--]--><!--[--><div class="vp-flyout vp-navbar-menu-group" data-v-b42927e7 data-v-15bfbb59><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-15bfbb59><span class="text" data-v-15bfbb59><span class="vp-icon vpi-icon-park-outline-more-three" style="" aria-hidden data-provider="iconify" data-v-15bfbb59></span><!----><span data-v-15bfbb59>更多</span><!----><span class="vpi-chevron-down text-icon" data-v-15bfbb59></span></span></button><div class="menu" data-v-15bfbb59><div class="vp-menu" data-v-15bfbb59 data-v-f3964f32><div class="items" data-v-f3964f32><!--[--><!--[--><div class="vp-menu-link" data-v-f3964f32 data-v-e06ddb34><a class="vp-link link" href="/faq/" data-v-e06ddb34><!--[--><span class="vp-icon vpi-wpf-faq" style="" aria-hidden data-provider="iconify" data-v-e06ddb34></span> 常见问题 <!----><!--]--><!----></a></div><!--]--><!--[--><div class="vp-menu-link" data-v-f3964f32 data-v-e06ddb34><a class="vp-link link" href="/sponsor/" data-v-e06ddb34><!--[--><span class="vp-icon vpi-line-md-coffee-loop" style="" aria-hidden data-provider="iconify" data-v-e06ddb34></span> 喝杯奶茶 <!----><!--]--><!----></a></div><!--]--><!--[--><div class="vp-menu-link" data-v-f3964f32 data-v-e06ddb34><a class="vp-link link" href="/tools/" data-v-e06ddb34><!--[--><span class="vp-icon vpi-jam-tools" style="" aria-hidden data-provider="iconify" data-v-e06ddb34></span> 主题工具 <!----><!--]--><!----></a></div><!--]--><!--[--><div class="vp-menu-link" data-v-f3964f32 data-v-e06ddb34><a class="vp-link link" href="/friends/" data-v-e06ddb34><!--[--><span class="vp-icon vpi-carbon-friendship" style="" aria-hidden data-provider="iconify" data-v-e06ddb34></span> 友情链接 <!----><!--]--><!----></a></div><!--]--><!--[--><div class="vp-menu-group" data-v-f3964f32 data-v-6c770283><p class="title" data-v-6c770283><span class="vp-icon vpi-logos-vue bg" style="" aria-hidden data-provider="iconify" data-v-6c770283></span><span data-v-6c770283>Vuepress</span></p><!--[--><!--[--><div class="vp-menu-link" data-v-6c770283 data-v-e06ddb34><a class="vp-link link vp-external-link-icon" href="https://v2.vuepress.vuejs.org" target="_blank" rel="noopener noreferrer" data-v-e06ddb34><!--[--><span class="vp-icon vpi-logos-vue bg" style="" aria-hidden data-provider="iconify" data-v-e06ddb34></span> 官方文档 <!----><!--]--><span class="visually-hidden">(在新窗口打开)</span></a></div><!--]--><!--[--><div class="vp-menu-link" data-v-6c770283 data-v-e06ddb34><a class="vp-link link vp-external-link-icon" href="https://ecosystem.vuejs.press/" target="_blank" rel="noopener noreferrer" data-v-e06ddb34><!--[--><span class="vp-icon vpi-logos-vue bg" style="" aria-hidden data-provider="iconify" data-v-e06ddb34></span> 生态系统 <!----><!--]--><span class="visually-hidden">(在新窗口打开)</span></a></div><!--]--><!--]--></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><div class="vp-flyout vp-navbar-menu-group" data-v-b42927e7 data-v-15bfbb59><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-15bfbb59><span class="text" data-v-15bfbb59><span class="vp-icon vpi-codicon-versions" style="" aria-hidden data-provider="iconify" data-v-15bfbb59></span><!----><span data-v-15bfbb59>1.0.0-rc.194</span><span class="vp-badge tip vp-menu-badge" style="" data-v-15bfbb59 data-v-52c8341f><!--[--><!--]--></span><span class="vpi-chevron-down text-icon" data-v-15bfbb59></span></span></button><div class="menu" data-v-15bfbb59><div class="vp-menu" data-v-15bfbb59 data-v-f3964f32><div class="items" data-v-f3964f32><!--[--><!--[--><div class="vp-menu-link" data-v-f3964f32 data-v-e06ddb34><a class="vp-link link" href="/changelog/" data-v-e06ddb34><!--[--><!----> 更新日志 <!----><!--]--><!----></a></div><!--]--><!--[--><div class="vp-menu-link" data-v-f3964f32 data-v-e06ddb34><a class="vp-link link" href="/contributing/" data-v-e06ddb34><!--[--><!----> 参与贡献 <!----><!--]--><!----></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--]--></nav><!--[--><!--]--><div class="vp-flyout vp-navbar-translations translations" data-v-b90976a4 data-v-e0a18246 data-v-15bfbb59><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="选择语言" data-v-15bfbb59><span class="text" data-v-15bfbb59><!----><span class="vpi-languages option-icon" data-v-15bfbb59></span><!----><!----><span class="vpi-chevron-down text-icon" data-v-15bfbb59></span></span></button><div class="menu" data-v-15bfbb59><div class="vp-menu" data-v-15bfbb59 data-v-f3964f32><!----><!--[--><!--[--><div class="items" data-v-e0a18246><p class="title" data-v-e0a18246>简体中文</p><!--[--><div class="vp-menu-link" data-v-e0a18246 data-v-e06ddb34><a class="vp-link link" href="/en/blog/" data-v-e06ddb34><!--[--><!----> English <!----><!--]--><!----></a></div><!--]--></div><!--]--><!--]--></div></div></div><div class="vp-navbar-appearance appearance" data-v-b90976a4 data-v-17780d44><button class="vp-switch vp-switch-appearance" type="button" role="switch" aria-checked="false" title data-v-17780d44 data-v-cbe77d87 data-v-36bbbf22><span class="check" data-v-36bbbf22><span class="icon" data-v-36bbbf22><!--[--><span class="vpi-sun sun" data-v-cbe77d87></span><span class="vpi-moon moon" data-v-cbe77d87></span><!--]--></span></span></button></div><div class="vp-social-links vp-navbar-social-links social-links" data-v-b90976a4 data-v-ba70645a data-v-5dc0805d><!--[--><a class="vp-social-link no-icon" href="https://github.com/pengzhanbo/vuepress-theme-plume" aria-label="github" title="github" target="_blank" rel="noopener" data-v-5dc0805d data-v-c5bc2a09><span class="vp-icon vpi-simple-icons-github" style="" aria-hidden data-provider="iconify" data-v-c5bc2a09></span></a><a class="vp-social-link no-icon" href="https://qm.qq.com/q/FbPPoOIscE" aria-label="qq" title="qq" target="_blank" rel="noopener" data-v-5dc0805d data-v-c5bc2a09><span class="vp-icon vpi-simple-icons-qq" style="" aria-hidden data-provider="iconify" data-v-c5bc2a09></span></a><!--]--></div><div class="vp-flyout vp-navbar-extra extra" data-v-b90976a4 data-v-7e94ae84 data-v-15bfbb59><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-15bfbb59><span class="vpi-more-horizontal icon" data-v-15bfbb59></span></button><div class="menu" data-v-15bfbb59><div class="vp-menu" data-v-15bfbb59 data-v-f3964f32><!----><!--[--><!--[--><div class="group translations" data-v-7e94ae84><p class="trans-title" data-v-7e94ae84>简体中文</p><!--[--><div class="vp-menu-link" data-v-7e94ae84 data-v-e06ddb34><a class="vp-link link" href="/en/blog/" data-v-e06ddb34><!--[--><!----> English <!----><!--]--><!----></a></div><!--]--></div><div class="group appearance" data-v-7e94ae84><div class="item appearance" data-v-7e94ae84><p class="label" data-v-7e94ae84>外观</p><div class="appearance-action" data-v-7e94ae84><button class="vp-switch vp-switch-appearance" type="button" role="switch" aria-checked="false" title data-v-7e94ae84 data-v-cbe77d87 data-v-36bbbf22><span class="check" data-v-36bbbf22><span class="icon" data-v-36bbbf22><!--[--><span class="vpi-sun sun" data-v-cbe77d87></span><span class="vpi-moon moon" data-v-cbe77d87></span><!--]--></span></span></button></div></div></div><div class="group social" data-v-7e94ae84><div class="item social-links" data-v-7e94ae84><div class="vp-social-links social-links-list" data-v-7e94ae84 data-v-5dc0805d><!--[--><a class="vp-social-link no-icon" href="https://github.com/pengzhanbo/vuepress-theme-plume" aria-label="github" title="github" target="_blank" rel="noopener" data-v-5dc0805d data-v-c5bc2a09><span class="vp-icon vpi-simple-icons-github" style="" aria-hidden data-provider="iconify" data-v-c5bc2a09></span></a><a class="vp-social-link no-icon" href="https://qm.qq.com/q/FbPPoOIscE" aria-label="qq" title="qq" target="_blank" rel="noopener" data-v-5dc0805d data-v-c5bc2a09><span class="vp-icon vpi-simple-icons-qq" style="" aria-hidden data-provider="iconify" data-v-c5bc2a09></span></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="vp-navbar-hamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="nav-screen" data-v-b90976a4 data-v-2122c19e><span class="container" data-v-2122c19e><span class="top" data-v-2122c19e></span><span class="middle" data-v-2122c19e></span><span class="bottom" data-v-2122c19e></span></span></button></div></div></div></div><div class="divider" data-v-b90976a4><div class="divider-line" data-v-b90976a4></div></div></div><!----></header><!----><!--[--><!----><!----><!--]--><!--[--><div id="VPContent" vp-content class="vp-content" data-v-a5aadcf6 data-v-d3283ff2><div class="vp-doc-container is-posts" data-v-d3283ff2 data-v-c2acd915><!--[--><!--]--><div class="container" data-v-c2acd915><!----><div class="content" data-v-c2acd915><div class="content-container" data-v-c2acd915><!--[--><!--]--><main class="main" data-v-c2acd915><nav class="vp-breadcrumb" data-v-c2acd915 data-v-68dbda29><ol vocab="https://schema.org/" typeof="BreadcrumbList" data-v-68dbda29><!--[--><li property="itemListElement" typeof="ListItem" data-v-68dbda29><a class="vp-link link no-icon breadcrumb" href="/" property="item" typeof="WebPage" data-v-68dbda29><!--[-->首页<!--]--><!----></a><span class="vpi-chevron-right" data-v-68dbda29></span><meta property="name" content="首页" data-v-68dbda29><meta property="position" content="1" data-v-68dbda29></li><li property="itemListElement" typeof="ListItem" data-v-68dbda29><a class="vp-link link no-icon breadcrumb" href="/blog/" property="item" typeof="WebPage" data-v-68dbda29><!--[-->博客<!--]--><!----></a><span class="vpi-chevron-right" data-v-68dbda29></span><meta property="name" content="博客" data-v-68dbda29><meta property="position" content="2" data-v-68dbda29></li><li property="itemListElement" typeof="ListItem" data-v-68dbda29><a class="vp-link link no-icon breadcrumb" href="/blog/categories/?id=7a3973" property="item" typeof="WebPage" data-v-68dbda29><!--[-->更新说明<!--]--><!----></a><span class="vpi-chevron-right" data-v-68dbda29></span><meta property="name" content="更新说明" data-v-68dbda29><meta property="position" content="3" data-v-68dbda29></li><li property="itemListElement" typeof="ListItem" data-v-68dbda29><a class="vp-link link no-icon breadcrumb current" href="/article/5vjshyi9/" property="item" typeof="WebPage" data-v-68dbda29><!--[-->1.0.0-rc.73 至 rc.77 更新说明<!--]--><!----></a><!----><meta property="name" content="1.0.0-rc.73 至 rc.77 更新说明" data-v-68dbda29><meta property="position" content="4" data-v-68dbda29></li><!--]--></ol></nav><!--[--><!--]--><!--[--><div class="vp-doc-title" data-v-42fa9e7c><!--[--><!--]--><h1 class="page-title" data-v-42fa9e7c><!----> 1.0.0-rc.73 至 rc.77 更新说明 <!----></h1><!--[--><!--[--><!--[--><!--[--><div class="vp-page-context-menu" data-v-a5aadcf6 data-v-7b50bfdd><div class="page-context-button" type="button" data-v-7b50bfdd><span class="page-context-copy" data-v-7b50bfdd><span class="vpi-copy" data-v-7b50bfdd></span><span class="text" data-v-7b50bfdd>复制页面</span></span><span class="page-context-toggle" data-v-7b50bfdd><span class="vpi-chevron-down" data-v-7b50bfdd></span></span></div><ul class="page-context-menu" style="display:none;" data-v-7b50bfdd><li data-v-7b50bfdd><a href="javascript:void(0)" data-v-7b50bfdd><span class="vpi-copy" data-v-7b50bfdd></span><span data-v-7b50bfdd>复制页面 <small data-v-7b50bfdd>将页面以 Markdown 格式复制供 LLMs 使用</small></span></a></li><!--[--><li data-v-7b50bfdd><a href="/article/5vjshyi9/index.md" target="_blank" rel="noopener noreferrer" aria-label="以 Markdown 格式查看" type="text/markdown" data-allow-mismatch data-v-7b50bfdd><span class="vpi-markdown" data-v-7b50bfdd></span><span data-v-7b50bfdd>以 Markdown 格式查看 <span class="vpi-external-link" data-v-7b50bfdd></span><small data-v-7b50bfdd>以纯文本查看此页面</small></span></a></li><li data-v-7b50bfdd><a href="https://chat.openai.com/?prompt=" target="_blank" rel="noopener noreferrer" aria-label="在 ChatGPT 中打开" data-allow-mismatch data-v-7b50bfdd><span class="vpi-chatgpt" data-v-7b50bfdd></span><span data-v-7b50bfdd>在 ChatGPT 中打开 <span class="vpi-external-link" data-v-7b50bfdd></span><small data-v-7b50bfdd>向 ChatGPT 提问有关此页面</small></span></a></li><li data-v-7b50bfdd><a href="https://claude.ai/new?q=" target="_blank" rel="noopener noreferrer" aria-label="在 Claude 中打开" data-allow-mismatch data-v-7b50bfdd><span class="vpi-claude" data-v-7b50bfdd></span><span data-v-7b50bfdd>在 Claude 中打开 <span class="vpi-external-link" data-v-7b50bfdd></span><small data-v-7b50bfdd>向 Claude 提问有关此页面</small></span></a></li><li data-v-7b50bfdd><a href="https://perplexity.ai/?q=" target="_blank" rel="noopener noreferrer" aria-label="在 Perplexity 中打开" data-allow-mismatch data-v-7b50bfdd><span class="vpi-perplexity" data-v-7b50bfdd></span><span data-v-7b50bfdd>在 Perplexity 中打开 <span class="vpi-external-link" data-v-7b50bfdd></span><small data-v-7b50bfdd>向 Perplexity 提问有关此页面</small></span></a></li><!--]--></ul></div><!--]--><!--]--><!--]--><!--]--></div><div class="vp-doc-meta" data-v-42fa9e7c><!--[--><!--]--><p class="reading-time" data-v-42fa9e7c><span class="vpi-books icon" data-v-42fa9e7c></span><span data-v-42fa9e7c>约 1272 字</span><span data-v-42fa9e7c>大约 4 分钟</span></p><!----><!--[--><!--]--><p class="create-time" data-v-42fa9e7c><span class="vpi-clock icon" data-v-42fa9e7c></span><span data-v-42fa9e7c>2024-07-11</span></p></div><!--]--><!--[--><!--]--><!--[--><div class="_article_5vjshyi9_ external-link-icon-enabled vp-doc plume-content" vp-content data-v-c2acd915><!--[--><!--]--><div data-v-c2acd915><p>近期的这几个版本主要围绕 <strong>实现单独的主题配置文件</strong> ,监听并支持热更新。</p><h2 id="breaking-changes" tabindex="-1"><a class="header-anchor" href="#breaking-changes"><span>Breaking Changes</span></a></h2><p>以下内置插件被移除:</p><ul><li>移除 <code>@vuepress-plume/plugin-blog-data</code> 插件</li><li>移除 <code>@vuepress-plume/plugin-notes-data</code> 插件</li><li>移除 <code>@vuepress-plume/plugin-auto-frontmatter</code> 插件</li></ul><p>以上插件的功能全部移动到 <code>vuepress-theme-plume</code> 主题包内部重新实现。原因是,单独的主题配置文件, 在异步加载完配置、以及配置热更新时,需要对这些插件所实现的功能进行重载,为了使流程更加清晰可控, 在主题内重新实现了这些功能,并移除了相关插件。</p><p><strong>但相关的配置项并没有发生变更,因此版本更新后用户无需修改配置。</strong></p><h2 id="主要更新" tabindex="-1"><a class="header-anchor" href="#主要更新"><span>主要更新</span></a></h2><h3 id="新增-主题配置文件" tabindex="-1"><a class="header-anchor" href="#新增-主题配置文件"><span>新增 主题配置文件</span></a></h3><p>一般我们在使用 <code>VuePress</code> 构建站点时,通常会在 <code>.vuepress/config.js</code> 中引入主题并进行主题配置:</p><div class="language-ts" data-highlighter="shiki" data-ext="ts" style="--shiki-light:#393a34;--shiki-dark:#dbd7caee;--shiki-light-bg:#ffffff;--shiki-dark-bg:#121212;"><pre class="shiki shiki-themes vitesse-light vitesse-dark vp-code"><code class="language-ts"><span class="line"><span style="--shiki-light:#1E754F;--shiki-dark:#4D9375;">import</span><span style="--shiki-light:#999999;--shiki-dark:#666666;"> {</span><span style="--shiki-light:#B07D48;--shiki-dark:#BD976A;"> defineUserConfig</span><span style="--shiki-light:#999999;--shiki-dark:#666666;"> }</span><span style="--shiki-light:#1E754F;--shiki-dark:#4D9375;"> from</span><span style="--shiki-light:#B5695977;--shiki-dark:#C98A7D77;"> &#39;</span><span style="--shiki-light:#B56959;--shiki-dark:#C98A7D;">vuepress</span><span style="--shiki-light:#B5695977;--shiki-dark:#C98A7D77;">&#39;</span></span>
<span class="line"><span style="--shiki-light:#1E754F;--shiki-dark:#4D9375;">import</span><span style="--shiki-light:#999999;--shiki-dark:#666666;"> {</span><span style="--shiki-light:#B07D48;--shiki-dark:#BD976A;"> plumeTheme</span><span style="--shiki-light:#999999;--shiki-dark:#666666;"> }</span><span style="--shiki-light:#1E754F;--shiki-dark:#4D9375;"> from</span><span style="--shiki-light:#B5695977;--shiki-dark:#C98A7D77;"> &#39;</span><span style="--shiki-light:#B56959;--shiki-dark:#C98A7D;">vuepress-theme-plume</span><span style="--shiki-light:#B5695977;--shiki-dark:#C98A7D77;">&#39;</span></span>
<span class="line"></span>
<span class="line"><span style="--shiki-light:#1E754F;--shiki-dark:#4D9375;">export</span><span style="--shiki-light:#1E754F;--shiki-dark:#4D9375;"> default</span><span style="--shiki-light:#59873A;--shiki-dark:#80A665;"> defineUserConfig</span><span style="--shiki-light:#999999;--shiki-dark:#666666;">({</span></span>
<span class="line"><span style="--shiki-light:#998418;--shiki-dark:#B8A965;"> theme</span><span style="--shiki-light:#999999;--shiki-dark:#666666;">: </span><span style="--shiki-light:#59873A;--shiki-dark:#80A665;">plumeTheme</span><span style="--shiki-light:#999999;--shiki-dark:#666666;">({</span></span>
<span class="line"><span style="--shiki-light:#A0ADA0;--shiki-dark:#758575DD;"> // 主题配置</span></span>
<span class="line"><span style="--shiki-light:#999999;--shiki-dark:#666666;"> }),</span></span>
<span class="line"><span style="--shiki-light:#999999;--shiki-dark:#666666;">})</span></span></code></pre></div><p>主题配置 通常会包括 如 导航栏、侧边导航栏、多语言相关等的配置。 当我们启动了 VuePress 服务后,对 <code>.vuepress/config.js</code> 的修改会引起 VuePress 服务的重启, 这对于 VuePress 相关的配置而言是合理的行为。</p><p>但对于 主题相关的配置而言,大部分的配置更新是没有必要 重启 VuePress 服务的。 特别是当我们频繁的更新主题配置时,还可能引起 VuePress 服务崩溃, 这对于我们在编写站点内容时带来的体验是非常糟糕的。</p><p>因此,主题新增了一个 <code>plume.config.js</code> 的主题配置文件,将主题配置进行单独的维护。 该配置文件主要用于管理主题配置中与 构建流无关的配置。你对他的任意修改,都将以热更新的方式, 更新主题,并同步到 客户端站点实现无刷新更新,完全避免了 VuePress 服务多次重启的问题。</p><p>你可以直接在 VuePress 配置文件的相同目录下直接创建 <code>plume.config.js</code> ,主题会自动加载该文件, 也可以使用 <code>plume.config.ts</code> 文件,以获取更好的类型提示。</p><div class="vp-code-tabs"><div class="vp-code-tabs-nav" role="tablist"><!--[--><button class="active vp-code-tab-nav" type="button" role="tab" aria-controls="codetab-54-0" aria-selected="true"><!--[--><span class="vp-icon vpi-vscode-icons-file-type-typescript bg" style="" aria-hidden data-provider="iconify"></span><span>.vuepress/config.ts</span><!--]--></button><button class="vp-code-tab-nav" type="button" role="tab" aria-controls="codetab-54-1" aria-selected="false"><!--[--><span class="vp-icon vpi-vscode-icons-file-type-typescript bg" style="" aria-hidden data-provider="iconify"></span><span>.vuepress/plume.config.ts</span><!--]--></button><!--]--></div><!--[--><div id="codetab-54-0" class="active vp-code-tab" role="tabpanel" aria-expanded="true"><div class="vp-code-tab-title"><!--[--><span class="vp-icon vpi-vscode-icons-file-type-typescript bg" style="" aria-hidden data-provider="iconify"></span><span>.vuepress/config.ts</span><!--]--></div><!--[--><div class="language-ts" data-highlighter="shiki" data-ext="ts" style="--shiki-light:#393a34;--shiki-dark:#dbd7caee;--shiki-light-bg:#ffffff;--shiki-dark-bg:#121212;"><pre class="shiki shiki-themes vitesse-light vitesse-dark vp-code"><code class="language-ts"><span class="line"><span style="--shiki-light:#1E754F;--shiki-dark:#4D9375;">import</span><span style="--shiki-light:#999999;--shiki-dark:#666666;"> {</span><span style="--shiki-light:#B07D48;--shiki-dark:#BD976A;"> defineUserConfig</span><span style="--shiki-light:#999999;--shiki-dark:#666666;"> }</span><span style="--shiki-light:#1E754F;--shiki-dark:#4D9375;"> from</span><span style="--shiki-light:#B5695977;--shiki-dark:#C98A7D77;"> &#39;</span><span style="--shiki-light:#B56959;--shiki-dark:#C98A7D;">vuepress</span><span style="--shiki-light:#B5695977;--shiki-dark:#C98A7D77;">&#39;</span></span>
<span class="line"><span style="--shiki-light:#1E754F;--shiki-dark:#4D9375;">import</span><span style="--shiki-light:#999999;--shiki-dark:#666666;"> {</span><span style="--shiki-light:#B07D48;--shiki-dark:#BD976A;"> plumeTheme</span><span style="--shiki-light:#999999;--shiki-dark:#666666;"> }</span><span style="--shiki-light:#1E754F;--shiki-dark:#4D9375;"> from</span><span style="--shiki-light:#B5695977;--shiki-dark:#C98A7D77;"> &#39;</span><span style="--shiki-light:#B56959;--shiki-dark:#C98A7D;">vuepress-theme-plume</span><span style="--shiki-light:#B5695977;--shiki-dark:#C98A7D77;">&#39;</span></span>
<span class="line"></span>
<span class="line"><span style="--shiki-light:#1E754F;--shiki-dark:#4D9375;">export</span><span style="--shiki-light:#1E754F;--shiki-dark:#4D9375;"> default</span><span style="--shiki-light:#59873A;--shiki-dark:#80A665;"> defineUserConfig</span><span style="--shiki-light:#999999;--shiki-dark:#666666;">({</span></span>
<span class="line"><span style="--shiki-light:#998418;--shiki-dark:#B8A965;"> theme</span><span style="--shiki-light:#999999;--shiki-dark:#666666;">: </span><span style="--shiki-light:#59873A;--shiki-dark:#80A665;">plumeTheme</span><span style="--shiki-light:#999999;--shiki-dark:#666666;">()</span></span>
<span class="line"><span style="--shiki-light:#999999;--shiki-dark:#666666;">})</span></span></code></pre></div><!--]--></div><div id="codetab-54-1" class="vp-code-tab" role="tabpanel" aria-expanded="false"><div class="vp-code-tab-title"><!--[--><span class="vp-icon vpi-vscode-icons-file-type-typescript bg" style="" aria-hidden data-provider="iconify"></span><span>.vuepress/plume.config.ts</span><!--]--></div><!--[--><div class="language-ts" data-highlighter="shiki" data-ext="ts" style="--shiki-light:#393a34;--shiki-dark:#dbd7caee;--shiki-light-bg:#ffffff;--shiki-dark-bg:#121212;"><pre class="shiki shiki-themes vitesse-light vitesse-dark vp-code"><code class="language-ts"><span class="line"><span style="--shiki-light:#1E754F;--shiki-dark:#4D9375;">import</span><span style="--shiki-light:#999999;--shiki-dark:#666666;"> {</span><span style="--shiki-light:#B07D48;--shiki-dark:#BD976A;"> defineThemeConfig</span><span style="--shiki-light:#999999;--shiki-dark:#666666;"> }</span><span style="--shiki-light:#1E754F;--shiki-dark:#4D9375;"> from</span><span style="--shiki-light:#B5695977;--shiki-dark:#C98A7D77;"> &#39;</span><span style="--shiki-light:#B56959;--shiki-dark:#C98A7D;">vuepress-theme-plume</span><span style="--shiki-light:#B5695977;--shiki-dark:#C98A7D77;">&#39;</span></span>
<span class="line"></span>
<span class="line"><span style="--shiki-light:#1E754F;--shiki-dark:#4D9375;">export</span><span style="--shiki-light:#1E754F;--shiki-dark:#4D9375;"> default</span><span style="--shiki-light:#59873A;--shiki-dark:#80A665;"> defineThemeConfig</span><span style="--shiki-light:#999999;--shiki-dark:#666666;">({</span></span>
<span class="line"><span style="--shiki-light:#A0ADA0;--shiki-dark:#758575DD;"> // 主题配置</span></span>
<span class="line"><span style="--shiki-light:#999999;--shiki-dark:#666666;">})</span></span></code></pre></div><!--]--></div><!--]--></div><h3 id="新增-编译缓存" tabindex="-1"><a class="header-anchor" href="#新增-编译缓存"><span>新增 编译缓存</span></a></h3><p>VuePress 在每次启动时,都需要全量编译所有的 <code>markdown</code> 文件,在站点内容比较少,且内容不复杂时, 这一过程不算特别耗时,但是当 站点的内容越来越多,内容越来越复杂时,启动等待的时间就会变得越来越久。</p><p>以本主题的文档站点为例,虽然主题文档的内容并不算特别多,但是由于使用了 <code>shiki</code> 语法高亮,并支持了 <code>twoslash</code> 功能,由于 <code>twoslash</code> 需要对代码块进行类型编译,非常耗时,这导致 主题文档站点的启动时间 达到了夸张的 <code>15s</code> 以上!</p><p>为了缓解这一问题,主题对 <code>markdown</code> 文件的编译做了一层缓存,在首次启用 <code>VuePress</code> 服务时,主题会 对所有的 <code>markdown</code> 文件的编译结果进行缓存,在二次启动时,直接从缓存中读取 <code>markdown</code> 文件的编译结果。 且仅在 <code>markdown</code> 文件有发生变更时,才会重新编译。</p><p><strong>通过编译缓存,主题文档站点的启动耗时,从 <code>15s</code> 降低到了 <code>1.2s</code> 左右 </strong></p><p>另一方面, markdown 编译过程中耗时较为严重的是对 <strong>代码块</strong> 的编译,特别是 代码块使用了 <code>twoslash</code> 时。 主题原来的 <code>15s</code> 耗时主要就是由于 <code>twoslash</code> 的编译时间过长导致的。</p><p>主题同样对 代码块 进行了特殊的缓存处理,只有当 代码块 发生变化时,才会重新编译当前的代码块。</p><h3 id="新增-autofrontmatter-配置" tabindex="-1"><a class="header-anchor" href="#新增-autofrontmatter-配置"><span>新增 autoFrontmatter 配置</span></a></h3><p>在过去的版本,主题会自动为每个 <code>markdown</code> 文件添加了 <code>frontmatter</code> 配置,用户无法更改这个行为, 但部分用户可能不喜欢这一行为、或者只想给 部分 markdown 文件添加 <code>frontmatter</code> 配置、或者 只生成 部分的 <code>frontmatter</code> 配置。</p><p>为此,主题添加 <code>autoFrontmatter</code> 配置,用于控制是否自动为每个 <code>markdown</code> 文件添加 <code>frontmatter</code> 配置。 包括可以通过 <code>glob</code> 模式匹配过滤 <code>markdown</code> 文件,控制自动生成哪些 字段。</p><div class="language-ts" data-highlighter="shiki" data-ext="ts" style="--shiki-light:#393a34;--shiki-dark:#dbd7caee;--shiki-light-bg:#ffffff;--shiki-dark-bg:#121212;"><pre class="shiki shiki-themes vitesse-light vitesse-dark vp-code"><code class="language-ts"><span class="line"><span style="--shiki-light:#AB5959;--shiki-dark:#CB7676;">interface</span><span style="--shiki-light:#2E8F82;--shiki-dark:#5DA994;"> AutoFrontmatterOptions</span><span style="--shiki-light:#999999;--shiki-dark:#666666;"> {</span></span>
<span class="line"><span style="--shiki-light:#A0ADA0;--shiki-dark:#758575DD;"> /**</span></span>
<span class="line"><span style="--shiki-light:#A0ADA0;--shiki-dark:#758575DD;"> * glob 匹配,被匹配的文件将会自动生成 frontmatter</span></span>
<span class="line"><span style="--shiki-light:#A0ADA0;--shiki-dark:#758575DD;"> *</span></span>
<span class="line"><span style="--shiki-light:#A0ADA0;--shiki-dark:#758575DD;"> * </span><span style="--shiki-light:#999999;--shiki-dark:#666666;">@</span><span style="--shiki-light:#1E754F;--shiki-dark:#4D9375;">default</span><span style="--shiki-light:#B07D48;--shiki-dark:#BD976A;"> [&#39;</span><span style="--shiki-light:#A0ADA0;--shiki-dark:#758575DD;">**\/*.md&#39;]</span></span>
<span class="line"><span style="--shiki-light:#A0ADA0;--shiki-dark:#758575DD;"> */</span></span>
<span class="line"><span style="--shiki-light:#B07D48;--shiki-dark:#BD976A;"> include</span><span style="--shiki-light:#AB5959;--shiki-dark:#CB7676;">?</span><span style="--shiki-light:#999999;--shiki-dark:#666666;">: </span><span style="--shiki-light:#2E8F82;--shiki-dark:#5DA994;">string</span><span style="--shiki-light:#999999;--shiki-dark:#666666;"> | </span><span style="--shiki-light:#2E8F82;--shiki-dark:#5DA994;">string</span><span style="--shiki-light:#999999;--shiki-dark:#666666;">[]</span></span>
<span class="line"></span>
<span class="line"><span style="--shiki-light:#A0ADA0;--shiki-dark:#758575DD;"> /**</span></span>
<span class="line"><span style="--shiki-light:#A0ADA0;--shiki-dark:#758575DD;"> * glob 匹配,被匹配的文件将不会自动生成 frontmatter</span></span>
<span class="line"><span style="--shiki-light:#A0ADA0;--shiki-dark:#758575DD;"> */</span></span>
<span class="line"><span style="--shiki-light:#B07D48;--shiki-dark:#BD976A;"> exclude</span><span style="--shiki-light:#AB5959;--shiki-dark:#CB7676;">?</span><span style="--shiki-light:#999999;--shiki-dark:#666666;">: </span><span style="--shiki-light:#2E8F82;--shiki-dark:#5DA994;">string</span><span style="--shiki-light:#999999;--shiki-dark:#666666;"> | </span><span style="--shiki-light:#2E8F82;--shiki-dark:#5DA994;">string</span><span style="--shiki-light:#999999;--shiki-dark:#666666;">[]</span></span>
<span class="line"></span>
<span class="line"><span style="--shiki-light:#A0ADA0;--shiki-dark:#758575DD;"> /**</span></span>
<span class="line"><span style="--shiki-light:#A0ADA0;--shiki-dark:#758575DD;"> * 是否自动生成 permalink</span></span>
<span class="line"><span style="--shiki-light:#A0ADA0;--shiki-dark:#758575DD;"> *</span></span>
<span class="line"><span style="--shiki-light:#A0ADA0;--shiki-dark:#758575DD;"> * </span><span style="--shiki-light:#999999;--shiki-dark:#666666;">@</span><span style="--shiki-light:#1E754F;--shiki-dark:#4D9375;">default</span><span style="--shiki-light:#B07D48;--shiki-dark:#BD976A;"> true</span></span>
<span class="line"><span style="--shiki-light:#A0ADA0;--shiki-dark:#758575DD;"> */</span></span>
<span class="line"><span style="--shiki-light:#B07D48;--shiki-dark:#BD976A;"> permalink</span><span style="--shiki-light:#AB5959;--shiki-dark:#CB7676;">?</span><span style="--shiki-light:#999999;--shiki-dark:#666666;">: </span><span style="--shiki-light:#2E8F82;--shiki-dark:#5DA994;">boolean</span></span>
<span class="line"><span style="--shiki-light:#A0ADA0;--shiki-dark:#758575DD;"> /**</span></span>
<span class="line"><span style="--shiki-light:#A0ADA0;--shiki-dark:#758575DD;"> * 是否自动生成 createTime</span></span>
<span class="line"><span style="--shiki-light:#A0ADA0;--shiki-dark:#758575DD;"> *</span></span>
<span class="line"><span style="--shiki-light:#A0ADA0;--shiki-dark:#758575DD;"> * 默认读取 文件创建时间,`createTitme` 比 vuepress 默认的 `date` 时间更精准到秒</span></span>
<span class="line"><span style="--shiki-light:#A0ADA0;--shiki-dark:#758575DD;"> */</span></span>
<span class="line"><span style="--shiki-light:#B07D48;--shiki-dark:#BD976A;"> createTime</span><span style="--shiki-light:#AB5959;--shiki-dark:#CB7676;">?</span><span style="--shiki-light:#999999;--shiki-dark:#666666;">: </span><span style="--shiki-light:#2E8F82;--shiki-dark:#5DA994;">boolean</span></span>
<span class="line"><span style="--shiki-light:#A0ADA0;--shiki-dark:#758575DD;"> /**</span></span>
<span class="line"><span style="--shiki-light:#A0ADA0;--shiki-dark:#758575DD;"> * 是否自动生成 title</span></span>
<span class="line"><span style="--shiki-light:#A0ADA0;--shiki-dark:#758575DD;"> *</span></span>
<span class="line"><span style="--shiki-light:#A0ADA0;--shiki-dark:#758575DD;"> * 默认读取文件名作为标题</span></span>
<span class="line"><span style="--shiki-light:#A0ADA0;--shiki-dark:#758575DD;"> */</span></span>
<span class="line"><span style="--shiki-light:#B07D48;--shiki-dark:#BD976A;"> title</span><span style="--shiki-light:#AB5959;--shiki-dark:#CB7676;">?</span><span style="--shiki-light:#999999;--shiki-dark:#666666;">: </span><span style="--shiki-light:#2E8F82;--shiki-dark:#5DA994;">boolean</span></span>
<span class="line"><span style="--shiki-light:#999999;--shiki-dark:#666666;">}</span></span></code></pre></div></div><!--[--><h2 id="doc-contributors" tabindex="-1"><a href="#doc-contributors" class="header-anchor"><span>贡献者</span></a></h2><div class="vp-contributors"><a href="https://github.com/pengzhanbo" target="_blank" rel="noreferrer" class="vp-contributor"><img src="https://avatars.githubusercontent.com/pengzhanbo?v=4" alt class="vp-contributor-avatar"><span class="vp-contributor-name">pengzhanbo</span></a></div><!--]--><!--[--><h2 id="doc-changelog" tabindex="-1"><a href="#doc-changelog" class="header-anchor"><span>更新日志</span></a></h2><div class="vp-changelog-wrapper"><div class="vp-changelog-header"><div class="vp-latest-updated"><span class="vp-changelog-icon"></span><span data-allow-mismatch>2025/10/7 15:13</span></div><div><span class="vp-changelog-menu-icon"></span><span>查看所有更新日志</span></div></div><ul class="vp-changelog-list"><!--[--><li class="vp-changelog-item-commit"><a class="vp-changelog-hash" href="https://github.com/pengzhanbo/vuepress-theme-plume/commit/4d2361a7046214fe0f4e4af01831107fd00e38ad" target="_blank" rel="noreferrer"><code>4d236</code></a><span class="vp-changelog-divider">-</span><span class="vp-changelog-message">feat(theme)!: add collections support (<a href="https://github.com/pengzhanbo/vuepress-theme-plume/issues/704" target="_blank" rel="noopener noreferrer">#704</a>)</span><span class="vp-changelog-date" data-allow-mismatch><time datetime="2025-10-07T15:13:09.000Z">2025/10/7</time></span></li><li class="vp-changelog-item-commit"><a class="vp-changelog-hash" href="https://github.com/pengzhanbo/vuepress-theme-plume/commit/8b39248f9635d4e45990023ca1b9140b9076a318" target="_blank" rel="noreferrer"><code>8b392</code></a><span class="vp-changelog-divider">-</span><span class="vp-changelog-message">perf(theme): improve types (<a href="https://github.com/pengzhanbo/vuepress-theme-plume/issues/365" target="_blank" rel="noopener noreferrer">#365</a>)</span><span class="vp-changelog-date" data-allow-mismatch><time datetime="2024-11-28T15:05:27.000Z">2024/11/28</time></span></li><li class="vp-changelog-item-commit"><a class="vp-changelog-hash" href="https://github.com/pengzhanbo/vuepress-theme-plume/commit/ca21d1b8cb55b64b395361aea2b131be91d5e4e1" target="_blank" rel="noreferrer"><code>ca21d</code></a><span class="vp-changelog-divider">-</span><span class="vp-changelog-message">feat: add support optional icon for file-tree and code-tabs (<a href="https://github.com/pengzhanbo/vuepress-theme-plume/issues/216" target="_blank" rel="noopener noreferrer">#216</a>)</span><span class="vp-changelog-date" data-allow-mismatch><time datetime="2024-09-25T16:14:06.000Z">2024/9/25</time></span></li><li class="vp-changelog-item-commit"><a class="vp-changelog-hash" href="https://github.com/pengzhanbo/vuepress-theme-plume/commit/43d3e562303426279103479a84039c3684b95ec6" target="_blank" rel="noreferrer"><code>43d3e</code></a><span class="vp-changelog-divider">-</span><span class="vp-changelog-message">chore: tweak</span><span class="vp-changelog-date" data-allow-mismatch><time datetime="2024-09-24T19:37:41.000Z">2024/9/24</time></span></li><li class="vp-changelog-item-commit"><a class="vp-changelog-hash" href="https://github.com/pengzhanbo/vuepress-theme-plume/commit/059ed95cb2d9bcbbefc5cf4bbfdafc3d11efb27f" target="_blank" rel="noreferrer"><code>059ed</code></a><span class="vp-changelog-divider">-</span><span class="vp-changelog-message">docs: update docs</span><span class="vp-changelog-date" data-allow-mismatch><time datetime="2024-08-23T17:51:44.000Z">2024/8/23</time></span></li><li class="vp-changelog-item-commit"><a class="vp-changelog-hash" href="https://github.com/pengzhanbo/vuepress-theme-plume/commit/55ba1988a41e744ba2a26fe00aa65b605a0e33d5" target="_blank" rel="noreferrer"><code>55ba1</code></a><span class="vp-changelog-divider">-</span><span class="vp-changelog-message">docs: update docs</span><span class="vp-changelog-date" data-allow-mismatch><time datetime="2024-07-19T16:49:24.000Z">2024/7/19</time></span></li><li class="vp-changelog-item-commit"><a class="vp-changelog-hash" href="https://github.com/pengzhanbo/vuepress-theme-plume/commit/69772acd67915ff2265f44135a6cdc6f893f6fc7" target="_blank" rel="noreferrer"><code>69772</code></a><span class="vp-changelog-divider">-</span><span class="vp-changelog-message">chore: tweak</span><span class="vp-changelog-date" data-allow-mismatch><time datetime="2024-07-11T18:32:59.000Z">2024/7/11</time></span></li><!--]--></ul></div><!--]--><!----><footer class="vp-doc-footer" data-v-c2acd915 data-v-393f5f4b><!--[--><!--]--><div class="edit-info" data-v-393f5f4b><div class="edit-link" data-v-393f5f4b><a class="vp-link link no-icon vp-external-link-icon edit-link-button" href="https://github.com/pengzhanbo/vuepress-theme-plume/edit/main/docs/blog/3.更新说明/73-77.md" target="_blank" rel="noopener noreferrer" data-v-393f5f4b><!--[--><span class="vpi-square-pen edit-link-icon" aria-label="edit icon" data-v-393f5f4b></span> 编辑此页<!--]--><!----></a></div><!----></div><!----><nav class="prev-next" data-v-393f5f4b><div class="pager" data-v-393f5f4b><a class="vp-link link pager-link prev" href="/article/30995vcd/" data-v-393f5f4b><!--[--><span class="desc" data-v-393f5f4b>上一页</span><span class="title" data-v-393f5f4b><!----><span data-v-393f5f4b>照片类作品示例</span></span><!--]--><!----></a></div><div class="pager" data-v-393f5f4b><a class="vp-link link pager-link next" href="/article/i4cuuonn/" data-v-393f5f4b><!--[--><span class="desc" data-v-393f5f4b>下一页</span><span class="title" data-v-393f5f4b><!----><span data-v-393f5f4b>图片水印</span></span><!--]--><!----></a></div></nav></footer></div><!--]--></main><div id="comment" class="giscus-wrapper input-top vp-comment" vp-comment style="display:block;" data-v-c2acd915><div style="display: flex;align-items: center;justify-content: center;height: 96px"><span style="--loading-icon: url(&quot;data:image/svg+xml;charset=utf8,%3Csvg preserveAspectRatio=%22xMidYMid%22 viewBox=%2225 25 50 50%22%3E%3CanimateTransform attributeName=%22transform%22 type=%22rotate%22 dur=%222s%22 keyTimes=%220;1%22 repeatCount=%22indefinite%22 values=%220;360%22%3E%3C/animateTransform%3E%3Ccircle cx=%2250%22 cy=%2250%22 r=%2220%22 fill=%22none%22 stroke=%22currentColor%22 stroke-width=%224%22 stroke-linecap=%22round%22%3E%3Canimate attributeName=%22stroke-dasharray%22 dur=%221.5s%22 keyTimes=%220;0.5;1%22 repeatCount=%22indefinite%22 values=%221,200;90,200;1,200%22%3E%3C/animate%3E%3Canimate attributeName=%22stroke-dashoffset%22 dur=%221.5s%22 keyTimes=%220;0.5;1%22 repeatCount=%22indefinite%22 values=%220;-35px;-125px%22%3E%3C/animate%3E%3C/circle%3E%3C/svg%3E&quot;);--icon-size: 48px;display: inline-block;width: var(--icon-size);height: var(--icon-size);background-color: currentcolor;-webkit-mask-image: var(--loading-icon);mask-image: var(--loading-icon)"></span></div></div><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><!--]--><button type="button" class="vp-back-to-top" aria-label="back to top" data-v-a5aadcf6 style="display:none;" data-v-7a6b3799><span class="percent" data-allow-mismatch data-v-7a6b3799>0%</span><span class="show icon vpi-back-to-top" data-v-7a6b3799></span><svg aria-hidden="true" data-v-7a6b3799><circle cx="50%" cy="50%" data-allow-mismatch style="stroke-dasharray:calc(0% - 12.566370614359172px) calc(314.1592653589793% - 12.566370614359172px);" data-v-7a6b3799></circle></svg></button><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewbox="0 0 24 24" aria-label="sign down" class="vp-sign-down" aria-hidden="true" data-v-a5aadcf6 style="display:none;" data-v-43069080><g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2.5" data-v-43069080><path d="m19 11l-7 6l-7-6" data-v-43069080></path><path d="m19 5l-7 6l-7-6" opacity="0.6" data-v-43069080></path></g></svg><footer class="vp-footer" vp-footer data-v-a5aadcf6 data-v-b83cc7e0><!--[--><div class="container" data-v-b83cc7e0><div class="message" data-v-b83cc7e0>Powered by <a target="_blank" href="https://v2.vuepress.vuejs.org/">VuePress</a> & <a target="_blank" href="https://theme-plume.vuejs.press">vuepress-theme-plume</a></div><div class="copyright" data-v-b83cc7e0>Copyright © 2021-present pengzhanbo</div></div><!--]--></footer><!--[--><!--]--><!--]--></div><!----><!--]--><!--[--><!--]--><!--]--></div><script type="module" src="/assets/app-CponcA4I.js" defer></script></body></html>