Конфигурация

Базовые настройки

base

  • Тип: string
  • По умолчанию: /

Базовый URL сайта куда будет происходить публикация. Вам потребуется установить эту опцию, если вы планируете публиковать ваш сайт не по корневому пути, например GitHub pages. Если вы планируете опубликовать сайт по адресу https://foo.github.io/bar/, тогда base должна быть установлена в значение "/bar/". Значение всегда должно начинаться и заканчиваться слэшем.

Значение base автоматически добавляется в начало всех URL, начинающихся с / в других параметрах, поэтому вам потребуется определить его здесь только один раз.

Смотри также:

title

  • Тип: string
  • По умолчанию: undefined

Заголовок сайта. Он будет префиксом для всех заголовков страниц, а также отображаться в боковой панели в стандартной теме.

description

  • Тип: string
  • По умолчанию: undefined

Описание сайта. Будет отображаться в виде <meta> тега в HTML страницы.

  • Тип: Array
  • По умолчанию: []

Дополнительные теги, которые необходимо добавить в HTML страницы в тег <head>. Каждый тег может быть определён в виде [tagName, { attrName: attrValue }, innerHTML?]. Например, чтобы добавить пользовательскую иконку сайта:

module.exports = {
  head: [
    ['link', { rel: 'icon', href: '/logo.png' }]
  ]
}

host

  • Тип: string
  • По умолчанию: '0.0.0.0'

Определяет хост для сервера разработки.

port

  • Тип: number
  • По умолчанию: 8080

Определяет порт для сервера разработки.

dest

  • Тип: string
  • По умолчанию: .vuepress/dist

Определяет каталог сохранения сборки по команде vuepress build.

ga

  • Тип: string
  • По умолчанию: undefined

Указание Google Analytics ID для включения интеграции.

СОВЕТ

Пожалуйста, помните о вступившем в силу GDPR (2018 реформа правил защиты данных Евросоюза) и позаботьтесь о том, чтобы настроить Google Analytics на анонимные IP где это может потребоваться и/или необходимо.

serviceWorker

  • Тип: boolean
  • По умолчанию: false

При установке в значение true, VuePress будет автоматически генерировать и регистрировать service worker, который кэширует контент для использования оффлайн (используется только в production).

При разработке пользовательской темы компонент Layout.vue также будет генерировать следующие события:

  • sw-ready
  • sw-cached
  • sw-updated
  • sw-offline
  • sw-error

ПРИМЕЧАНИЯ ДЛЯ PWA

Параметр serviceWorker управляет только service worker. Чтобы сделать ваш сайт полностью PWA-совместимым, вам необходимо предоставить Web App Manifest и иконки в .vuepress/public. Подробнее в документации MDN — Web App Manifest.

Кроме того, включайте эту опцию только в том случае, если у вас есть возможность публикации сайта через SSL, поскольку service worker может быть зарегистрирован только по HTTPS адресам.

locales

  • Тип: { [path: string]: Object }
  • По умолчанию: undefined

Определяет локализации для поддержки i18n. Подробнее в разделе Интернационализация.

shouldPrefetch

  • Тип: Function
  • По умолчанию: () => true

Функция, определяющая какиим файлам необходимо генерировать подсказки пред-загрузки ресурсов <link rel="preload">. Подробнее в документации shouldPrefetch.

Темы

theme

  • Тип: string
  • По умолчанию: undefined

Укажите, чтобы использовать пользовательскую тему. При значении "foo", VuePress попытается загрузить компонент темы из node_modules/vuepress-theme-foo/Layout.vue.

themeConfig

  • Тип: Object
  • По умолчанию: {}

Определяет конфигурацию настроек для используемой темы. Список опций может варьироваться в зависимости от используемой вами темы.

Смотри также:

Markdown

markdown.lineNumbers

  • Тип: boolean
  • По умолчанию: undefined

Показывать ли номера строк слева в каждом блоке кода.

Смотри также:

markdown.slugify

  • Тип: Function
  • По умолчанию: source

Функция для преобразования текстов заголовков в slugs. Это влияет на генерируемые id/ссылки для якорей заголовков, блока содержания и ссылок в боковой панели.

  • Тип: Object
  • По умолчанию: { target: '_blank', rel: 'noopener noreferrer' }

Пары ключ и значение будут добавлены в теги <a>, которые указывают на внешние ссылки. Опция по умолчанию устанавливает открытие внешних ссылок в новом окне.

markdown.anchor

  • Тип: Object
  • По умолчанию: { permalink: true, permalinkBefore: true, permalinkSymbol: '#' }

Настройки для markdown-it-anchor. (Примечание: предпочитайте markdown.slugify если хотите настроить генерацию ID заголовков.)

markdown.toc

  • Тип: Object
  • По умолчанию: { includeLevel: [2, 3] }

Настройки для markdown-it-table-of-contents. (Примечание: предпочитайте markdown.slugify если хотите настроить генерацию ID заголовков.)

markdown.config

  • Тип: Function
  • По умолчанию: undefined

Функция для изменения стандартной конфигурации или применения дополнительных плагинов в экземпляре markdown-it, используемом для отображения исходных файлов. Например:

module.exports = {
  markdown: {
    config: md => {
      md.set({ breaks: true })
      md.use(require('markdown-it-xxx'))
    }
  }
}

Процесс сборки

postcss

  • Тип: Object
  • По умолчанию: { plugins: [require('autoprefixer')] }

Настройки для postcss-loader. Обратите внимание, что указав здесь своё значение вы перезапишете подключение autoprefixer и вам потребуется добавить его самостоятельно.

stylus

  • Тип: Object
  • По умолчанию: { preferPathResolver: 'webpack' }

Настройки для stylus-loader.

scss

  • Тип: Object
  • По умолчанию: {}

Настройки для sass-loader для загрузки *.scss файлов.

sass

  • Тип: Object
  • По умолчанию: { indentedSyntax: true }

Настройки sass-loader для загрузки *.sass файлов.

less

  • Тип: Object
  • По умолчанию: {}

Настройки для less-loader.

configureWebpack

  • Тип: Object | Function
  • По умолчанию: undefined

Изменение внутренней конфигурации webpack. Если значением будет объект, он будет объединён в финальную конфигурацию с помощью webpack-merge; если значением будет функция, она получит конфигурацию первым аргументом и флаг isServer вторым. Вы можете либо напрямую изменить конфигурацию, либо вернуть объект, который будет объединяться:

module.exports = {
  configureWebpack: (config, isServer) => {
    if (!isServer) {
      // изменяем конфигурацию для клиента
    }
  }
}

chainWebpack

  • Тип: Function
  • По умолчанию: undefined

Изменение внутренней конфигурации webpack с помощью webpack-chain.

module.exports = {
  chainWebpack: (config, isServer) => {
    // config будет экземпляром ChainableConfig
  }
}

Совместимость с браузерами

evergreen

  • Тип: boolean
  • По умолчанию: false

Установите в значение true если вы поддерживаете только современные (evergreen) браузеры. Это отключит транспиляцию модулей в ES5 и полифиллы для IE, что в результате ускорит сборку и уменьшит размер файлов.

Последнее обновление: 2018-6-20 17:55:59