appType: 'spa' | 'mpa' | 'custom' (default: 'spa')
Тип приложения
assetsInclude: string | RegExp | (string | RegExp)[] base: string http://localhost:5173/test (base: “test”)
cacheDir: string (default: "node_modules/.vite") clearScreen: boolean (default: true) envDir: string (default: root) envPrefix: string (default: VITE\_) '', vite выдаст ошибку. Чтобы убрать префикс смотри параметр define
logLevel: 'info' | 'warn' | 'error' | 'silent' (default: 'info') mode: 'development' | 'production' (default: 'development' for dev server, 'production' for build) publicDir: string | false (default: "public") root: string (default: process.cwd()) Опции для локального запуска (dev-server)
server: {
host: string | boolean (default: 'localhost') --host value
port: number (default: 5173) strictPort: boolean (default: false) (например 3001) уже занят, то при значении strictPort: true, выдаст ошибку.
Иначе займет другой свободный порт
https: {} https.createServer().
Нужен действительный secure сертификат
open: boolean | string proxy: Record<string, string | ProxyOptions> '/foo': 'http://localhost:4567'
(shorthand: http://localhost:5173/foo -> http://localhost:4567/foo)
cors: boolean | CorsOptions (default: true) headers: OutgoingHttpHeaders hmr: boolean | { protocol?: string, host?: string, port?: number, path?: string, timeout?: number, overlay?: boolean, clientPort?: number, server?: Server } (default: true) warmup: { clientFiles: string[], ssrFiles: string[] }
Указанные файлы будут преобразованы и кешированы предварительно, для быстрой загрузки.
Улучшает начальную загрузку страницы во время запуска сервера.
string - относительный от root путь до файла.
Например:
clientFiles: ['./src/components.vue', './src/utils/big-utils.js'],
ssrFiles: ['./src/server/modules.js'],
watch: object | null null то файлы просматриваться не будут. По умолчанию exclude .git/ и node_modules/
Подробнее тут
middlewareMode: boolean (default: false) }
Для работы с файловой системой
fs : {
strict: boolean (default: true) allow: string[] /@fs/
Если server.fs.strict: true, то этот параметр не устанавливать, будет ошибка
deny: string[] (default ['.env', '.env.*', '*.{pem,crt}']) origin: string sourcemapIgnoreList: false | (sourcePath: string, sourcemapPath: string) => boolean
(default: (sourcePath) => sourcePath.includes('node_modules')) }
Опции для сервера, запускаемого с помощью vite preview (то, что собрали в папку после build)
preview {
host: string | boolean (default: 'localhost') --host value
port: number (default: 5173) strictPort: boolean (default: false) (например 3001) уже занят, то при значении strictPort: true, выдаст ошибку.
Иначе займет другой свободный порт
https: {} https.createServer().
Нужен действительный secure сертификат
open: boolean | string proxy: Record<string, string | ProxyOptions> '/foo': 'http://localhost:4567'
(shorthand: http://localhost:5173/foo -> http://localhost:4567/foo)
cors: boolean | CorsOptions (default: true) headers: OutgoingHttpHeaders
Для настройки заголовков, которые приходят с сервера.
}
Опции для билд сборки (в продакшн)
build: {
target: string | string[] (default: "modules")
В какое окружение собираем билд.
"modules" - для браузеров с нативными модулями ES, нативным динамическим импортом ESM и import.meta
Список значений - chrome, deno, edge, firefox, hermes, ie, ios, node, opera, rhino, safari подробнее
modulePreload: boolean | { polyfill?: boolean, resolveDependencies?: ResolveModulePreloadDependenciesFn }
(default: { polyfill: true })
Полифилы
outDir: string (default: "dist")
root для билда
assetsDir: string (default: "assets")
Куда складываем результаты билда (сгенерированные чанки и бандлы)
путь относительно outDir, т.е. по дефолту process.cwd()/dist/assets
assetsInlineLimit: number | ((filePath: string, content: Buffer) => boolean | undefined)
(default: 4096 (4 КБ))
Все ресурсы, которые весят меньше этого значения будут переведены в base64 и использованы inline.
Т.е. для них не будет отдельного запроса во вкладке network
cssCodeSplit: boolean - (default: true)
Регулирует разделение css кода. Если false - то весь css будет собран в один файл, включая асинхронные модули (подключенные через lazy)
Если указать build.lib => будет (default: false)
cssTarget: string | string[] - (default: build.target)
Для какого окружения собираем css
cssMinify: boolean | 'esbuild' | 'lightningcss' - (default: build.minify)
Для регулировки минимизации css
По умолчанию используется 'esbuild'
Если хотим использовать 'lightningcss' нужно настроить в css: {lightningcss: {}}
Можно отключить параметром false
cssMinify: boolean | 'inline' | 'hidden' - (default: false)
Отображение исходных текстов программы (не минимизированных)
Если 'inline', исходная карта будет добавлена к результирующему выходному файлу как URI данных
'hidden' работает аналогично true за исключением того, что соответствующие комментарии исходной карты в связанных файлах подавляются.
rollupOptions: RollupOptions
Опции для сборщика rollup, который используется в build сборке
commonjsOptions: RollupCommonJSOptions
Опции для плагина rollup @rollup/plugin-commonjs
lib: false | LibraryOptions
Параметр настройки, если нужно собрать не приложение а библиотеку, например ui
manifest: boolean | string (default: false)
Для создания манифест файла
Если true то будет создан файл .vite/manifest.json
подробнее
ssrManifest: boolean | string (default: false)
Для создания манифест файла ssr
подробнее
ssr: boolean | string (default: false)
При использовании ssr
подробнее
ssrEmitAssets: boolean | string (default: false)
Собирает статику на клиенте. Конфликты с серверной статикой решаются разрабочиками
minify: boolean | 'terser' | 'esbuild' (default: 'esbuild' для сборки клиента, false для сборки SSR.)
Управление минификацией. 'esbuild' и 'terser' использует одноименные минификаторы.
Если стоит значение 'terser', нужно установить в dev зависимость
terserOptions: {}
Опции для terser минификатора. Использовать если minify: 'terser'
write: boolean (default: true)
Разрешает или запрещает записывать данные на диск при build.
emptyOutDir: boolean (default: true)
Перед билдом очищаем dist
copyPublicDir: boolean (default: true)
По умолчанию Vite копирует файлы из publicDir в outDir
reportCompressedSize: boolean (default: true)
Включить/отключить отчеты о размерах, сжатых gzip
Сжатие больших выходных файлов может быть медленным, поэтому его отключение может повысить производительность сборки для больших проектов.
chunkSizeWarningLimit: boolean (default: true) }