Слияние кода завершено, страница обновится автоматически
const path = require('path')
const { defineConfig, build } = require('vite')
const vue = require('@vitejs/plugin-vue')
const fs = require('fs')
// 添加打包入口文件夹 packages(需要手动创建)
const entryDir = path.resolve(__dirname, './packages')
// 添加出口文件夹 lib(不需要手动创建,会自动生成)
const outDir = path.resolve(__dirname, './lib')
// vite 配置
const baseConfig = defineConfig({
configFile: false,
publicDir: false,
plugins: [vue()]
})
// rollup 配置(vite 基于 rollup 打包)
const rollupOptions = {
// 这两个库不需要打包
external: ['vue', 'vue-router'],
output: {
globals: {
vue: 'Vue'
}
}
}
//全量构建
const buildAll = async () => {
await build(defineConfig({
...baseConfig,
build: {
rollupOptions,
lib: {
entry: path.resolve(entryDir, 'index.js'),
// 组件库名字
name: 'ng-form-elementplus',
fileName: 'ng-form-elementplus',
// 输出格式
formats: ['es', 'umd']
},
outDir
}
}))
}
const buildLib = async () => {
await buildAll()
fs.copyFileSync('./packages/index.d.ts', './lib/index.d.ts');
}
buildLib()
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )