РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
⊗tlVtBdAd 56 of 72 menu
◀ ▶

Папка ассетов в Vite

Папка ассетов собирает картинки и стили в отдельный каталог внутри dist.

По умолчанию Vite складывает скопированные ресурсы в dist/assets. Своё имя удобно, когда на сервере уже занято слово assets или нужна другая структура каталогов. Поле build.assetsDir меняет только подпапку относительно dist, сам index.html остаётся в корне вывода.

Укажем каталог media в конфиге:

import { defineConfig } from 'vite' export default defineConfig({ build: { assetsDir: 'media', }, })

Подключим svg через импорт в модуле:

<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 24"> <text x="4" y="18" font-size="14">hello</text> </svg>

Модуль вставит картинку на страницу и выведет текст hello:

import iconUrl from './icon.svg' const img = document.createElement('img') img.src = iconUrl img.alt = 'hello' document.body.append(img) document.querySelector('#app').textContent = 'hello'

Выполним сборку:

npm run build

В dist появится папка media, а не assets. Файл svg с хешем в имени лежит внутри media. В index.html адрес картинки ведёт в этот каталог.

Сложите картинки в каталог static внутри dist, импортируйте src/badge.svg из src/main.js, соберите проект со словом hello и найдите svg в dist/static.

Смените каталог на files, пересоберите проект и убедитесь, что картинка больше не попадает в dist/static, а лежит в dist/files.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить