Руководство по миграции конфигурации
// .vuepress/config.ts
- import theme from "vuepress-theme-hope";
+ import { defineUserConfig } from "vuepress";
+ import { hopeTheme } from "vuepress-theme-hope";
- export default theme.config({
+ export default defineUserConfig({
// your site config here
// ...
- themeConfig:{
+ theme: hopeTheme({
// your theme config here
// ...
- },
+ }),
});
// .vuepress/config.js
- const { config } = require("vuepress-theme-hope");
+ import { hopeTheme } from "vuepress-theme-hope";
- module.exports = theme.config({
+ export default {
// your site config here
// ...
- themeConfig:{
+ theme: hopeTheme({
// your theme config here
// ...
- },
+ }),
- });
+ };
Использование темы
- переименован
themeConfigвhopeTheme - переименован
navbarConfigвnavbar - переименован
sidebarConfigвsidebar - добавлены помощники
arraySidebarиobjectSidebar - удален
config
Параметры темы
изменен тип
authorсstring | undefinedнаAuthorInfo[] | AuthorInfo | string[] | string | undefinedinterface AuthorInfo { /** * Author name */ name: string; /** * Author website */ url?: string; /** * Author email */ email?: string; }Это изменение позволяет вам добавлять нескольких авторов и устанавливать для них сайты.
Панель навигации
унифицирован
nav,navbarвnavbarпереименован
darkLogoвlogoDarkпереименован
navAutoHideвnavbarAutoHideдобавлена опция
navbarIconдля управления отображением иконки на панели навигациидобавлена опция
navbarLayoutдля управления макетом панели навигации
Боковая панель
переименован
sidebarDepthвheaderDepthудален
displayAllHeaderssupport generating sidebar automatically from file structure
Конфигурация боковой панели навигации унифицирована
изменено
itemsв конфигурации панели навигации наchildrenизменено
titleнаtextиpathвlinkв конфигурации боковой панели.Навигационная панель V2 поддерживает установку пути к файлу Markdown непосредственно, как боковую панель, для автоматического создания текста, иконок и ссылок
добавлен
activeMatchдля управления активацией маршрута
Таким образом, оба они объединены как text, icon, prefix, link, children, activeMatch.
Поиск
Так как тема больше не имеет встроенного поиска:
удален
search,searchPlaceholder,searchMaxSuggestionsудален
algolia,algoliaType
Ссылка на страницу
переименован
prevLinksвprevLinkпереименован
nextLinksвnextLinkпереименован
editLinksвeditLinkпереименован
updateTimeвlastUpdated
Outlook
добавлена опция
iconAssetsзначение по умолчанию
iconPrefixтеперь выводится изiconAssetsобновлены значения параметра
darkmode- добавлен
"enable" - переименован
"switch"в"toggle" - переименован
"auto-switch"в"switch"
- добавлен
themeColorиfullscreenотключены по умолчанию
Конфигурация блога
поддержка отдельного конфига на каждом языке
добавлен
blog.description, чтобы установить описание блоггера или девизпереименован
blog.linksвblog.mediasизменить значение по умолчанию
blog.roundAvatarсtrueнаfalseпереименован
blog.perPageвblog.articlePerPageперемещен
blog.autoExcerptвplugins.blog.excerptLength
Конфигурация шифрования
изменен
encrypt.status: "global" | "local"(по умолчанию"local") наencrypt.global: boolean(по умолчаниюfalse)переименован
encrypt.globalвencrypt.admin
Пользовательский макет
- удален
custom
Макет страницы
- переименован
anchorDisplayвtoc
Скорость чтения
- перемещен
wordPerMinuteвplugins.readingTime.wordPerMinute
Изменения плагина
Дополнение
- добавлен
plugins.blogдля управления ссылками на блоги - добавлен
plugins.nprogressдля управления nprogress - добавлен
plugins.prismjsдля управления Prism.js
Изменения
Переместите все параметры, связанные с плагинами, в раздел plugins.
переименован
activeHashвplugins.activeHeaderLinksТема теперь использует официальный плагин
@vuepress/plugin-active-header-links.перемещен
commentвplugins.commentДобавлена поддержка
artalk,twikooиgiscusVssue в настоящее время отсутствует
Vssue написан на Vue2, и автор meteorlxy еще не сделал его совместимым с Vue3
Служба Valine удалена
Valine не требует обслуживания и может привести к утечке вашей конфиденциальности. Вместо этого вы должны использовать Waline.
перемещен
copyCodeвplugins.copyCodeперемещен
copyrightвplugins.copyrightПлагин сейчас отключен по умолчанию.
перемещен
feedвplugins.feedПоддерживает удаление пользовательских компонентов и элементов с помощью параметров
plugins.feed.removedElementsVisualized atom and rss feeds, configurable with
plugins.feed.atomXslFilenameplugins.feed.atomXslTemplateplugins.feed.rssXslFilenameandplugins.feed.rssXslTemplateНастройте генерацию ленты с помощью опцию
plugins.feed.getterПоддержка нескольких категорий
Переместите все параметры вывода из параметра
plugins.feed.outputв корневой каталог параметров плагина и переименуйте их.feed.output.atom.enableпереименованplugins.feed.atomfeed.output.json.enableпереименованplugins.feed.jsonfeed.output.rss.enableпереименованplugins.feed.rssfeed.output.atom.pathпереименованplugins.feed.atomOutputFilenamefeed.output.json.pathпереименованplugins.feed.jsonOutputFilenamefeed.output.rss.pathпереименованplugins.feed.rssOutputFilenameplugins.feed.atom,plugins.feed.jsonиplugins.feed.rssпо умолчанию имеют значениеfalseТема больше не выводит файлы ленты в трех форматах по умолчанию. При необходимости установите параметры для необходимых выходных форматов.
перемещен
gitвplugins.gitТема теперь использует официальный плагин
@vuepress/plugin-git.перемещен
mdEnhanceвplugins.mdEnhanceпроверка ссылок в разметке
Плагин теперь проверяет ваши уцененные ссылки и предупреждает вас при обнаружении неработающих ссылок.
Вы можете контролировать это поведение с помощью опции
plugins.mdEnhance.linkCheckподдержка метки изображения
Используйте суффикс
#lightи#dark, чтобы пометить изображения, чтобы отображать их в светлом или темном режиме с помощью опцииplugins.mdEnhance.imgMarkПоддержка chart.js
Добавлена поддержка chart.js через опцию
plugins.mdEnhance.chart::: chart Title ```json { // chart.js config } ``` ::: ::: chart Title ```js module.exports = { // chart.js config }; ``` :::Поддержка ECharts
Добавлена поддержка ECharts через опцию
plugins.mdEnhance.echarts::: echarts Title ```json { // chart.js config } ``` ::: ::: echarts Title ```js module.exports = { // chart.js config }; ``` :::контент включает поддержку
использует
@include(), чтобы включить другое содержимое файла в уценку с помощью параметровplugins.mdEnhance.include.Использует
@include(filename), чтобы включить файл.Чтобы частично импортировать файл, вы можете указать диапазон включаемых строк:
@include(filename{start-end})@include(filename{start-})@include(filename{-end})
Также вы можете указать область файла:
@include(filename#region)
поддержка вкладок
Использует контейнер
tabsдля создания вкладок через опциюplugins.mdEnhance.tabs.добавлен
plugins.mdEnhance.gfmУправление с поддержкой gfm
добавлен
plugins.mdEnhance.vPreСледующий синтаксис больше не встроен в VuePress2, поэтому мы добавляем эту опцию.
::: v-pre :::переименован
mdEnhance.codegroupвplugins.mdEnhance.codetabsпереименован
mdEnhance.lazyloadвplugins.mdEnhance.imgLazyloadизменение значение по умолчанию сtrueнаfalseудалено
plugins.mdEnhance.lineNumbersVuePress2 поддерживает настройку номеров строк для отдельных блоков кода
удалено
plugins.mdEnhance.imageFixПроблемы, связанные с изображением, были исправлены в версии 2
перемещен
photoSwipeвplugins.photoSwipeперемещен
pwaвplugins.pwaplugins.pwa.update: управление логикой обновления SW
"disabled": Ничего не делать, даже когда доступен новый service worker. После успешной установки новой службы и начала ожидания она будет контролировать страницу и предоставлять новый контент при следующем посещении."available": Отображать всплывающее окно обновления только тогда, когда доступен новый service worker"hint": Отображать подсказку, позволяющую пользователю выбрать немедленное обновление"force": Немедленно отменить регистрацию текущего сервисного работника, а затем обновить его, чтобы получить новый контент
plugins.pwa.appendBase: автоматически вставляет
baseв опциюmanifestplugins.pwa.hintComponent: Компонент подсказки для обнаружения нового контента
Подсказка shouldPrefetch
: Теперь плагин будет проверять опцию
shouldPrefetchв конфигурационном файле и предупреждать вас, чтобы вы отключили ее.Значение по умолчанию
plugins.pwa.cacheHTMLизменено сtrueнаfalseЭто может эффективно сократить время обновления SW
pwa.popupComponentпереименован вplugins.pwa.updateComponentЭто связано с тем, что мы добавили новое всплывающее окно подсказки, поэтому нам нужно избежать путаницы в именах
перемещен
readingTimeвplugins.readingTimeперемещен
seoвplugins.seoПоддержка JSON-LD
Плагин теперь может генерировать для вас теги сценария JSON-LD и предоставляет опцию
plugin.seo.jsonLd, позволяющую настраивать свойства JSON-LD.Генерация описания
Плагин может автоматически генерировать описание для вас с помощью параметров
plugin.seo.autoDescriptionКаноническая ссылка
Вы можете установить каноническую ссылку с помощью опции
plugin.seo.canonicalLink. Это полезно, когда ваша документацияseo.customMetaпереименован вplugin.seo.customHeadТеперь вы можете редактировать все теги заголовка, а не только мета в версии 1.
развернуты в нескольких местах.
перемещен
sitemapвplugins.sitemapVisualized sitemap, configurable with
plugins.sitemap.sitemapXSLFilenameandplugins.sitemap.sitemapXSLTemplateplugin.sitemap.priority: установка значения по умолчанию для приоритета
sitemap.urlsпереименован вplugin.sitemap.extraUrlssitemap.excludeпереименован вplugin.sitemap.excludeUrlssitemap.outFileпереименован вplugin.sitemap.sitemapFilenamesitemap.modifyTimeGetterпереименован вplugin.sitemap.modifyTimeGetter
Удаление
удалено
chunkRenameТема больше не предоставляет эту функцию.
удалено
cleanUrlТема больше не предоставляет эту функцию.
удалено
gitТема теперь использует официальный плагин
@vuepress/plugin-git.удалено
smoothScrollТема теперь обеспечивает плавную прокрутку с помощью CSS и больше не обеспечивает совместимость со старыми браузерами.