如何避免在目录中删除 vite 构建"dist"?



我想通过vite创建多个库,所以我尝试"rollupOptions;第一比如

import { defineConfig } from 'vite'
export default defineConfig({
build: {
rollupOptions: {
input: {
"qy-viewer": 'src/qy-viewer.ts',
"qy-swiper": 'src/qy-swiper.ts'
}
}
}
})

但这会产生有趣的结果,包括类似散列的字符串,如qy-swiper.f3fc032d.js
这没用,所以我放弃了这种方法。

接下来,我尝试准备多个vite配置文件。比如

vite.qy-swiper.config.ts

import { defineConfig } from 'vite'
export default defineConfig({
build: {
lib: {
entry: 'src/qy-swiper.ts',
name: 'QySwiper',
fileName: (format) => `qy-swiper.${format}.js`
},
rollupOptions: {
}
}
})

vite.qy-viewer.config.ts

import { defineConfig } from 'vite'
export default defineConfig({
build: {
lib: {
entry: 'src/qy-viewer.ts',
name: 'QyViewer',
fileName: (format) => `qy-viewer.${format}.js`
},
rollupOptions: {
}
}
})

软件包.json

{
"scripts": {
"build:swiper": "tsc && vite build --config vite.qy-swiper.config.ts",
"build:viewer": "tsc && vite build --config vite.qy-viewer.config.ts",
"build:lib": "npm run build:swiper && npm run build:viewer"
},
}

当我独立执行npm run build:swipernpm run build:viewer时,这非常有效,但一旦我执行npm run build:lib,只会创建qy查看器
是否有任何方法可以避免vite build删除dist目录中的文件?

build.emptyOutDir设置为false:

import { defineConfig } from 'vite'
export default defineConfig({
build: {
emptyOutDir: false,
},
⋮
})

最新更新