Имя файла библиотеки в Vite
Имя файла библиотеки задаёт fileName, и оно не берётся только из имени пакета.
Без явного fileName
Vite подставляет
значение name
из package.json.
Это удобно
на старте,
но при смене имени пакета
или при двух сборках
из одного репозитория
лучше зафиксировать
своё имя на диске.
Модуль-вход
снова экспортирует
hello:
export function sayHello() {
return 'hello';
}
Запишем
fileName
рядом с entry
и оставим
оба формата
es
и cjs:
import { defineConfig } from 'vite'
export default defineConfig({
build: {
lib: {
entry: 'src/index.js',
formats: ['es', 'cjs'],
fileName: 'hello-lib',
},
},
})
Выполним сборку:
npm run build
В dist
появятся
hello-lib.js
и hello-lib.cjs,
а не имена
из package.json.
Откроем каталог
и проверим,
что базовое имя
совпадает
с полем fileName.
Соберите библиотеку под именем ready-kit, экспортируйте функцию со строкой ready из src/index.js и оставьте два формата: модуль es и модуль cjs.
Убедитесь, что в dist лежат ready-kit.js и ready-kit.cjs, а не файлы с именем из package.json.