Monday, December 11, 2023
 Popular · Latest · Hot · Upcoming
23
rated 0 times [  27] [ 4]  / answers: 1 / hits: 5856  / 2 Years ago, sat, february 5, 2022, 12:00:00

I want to create multiple libraries by vite, so I try "rollupOptions" first. Like,


import { defineConfig } from 'vite'

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

But this create funny results including hash-like string, like qy-swiper.f3fc032d.js.

This is useless, so I gave up this approach.


Next I try preparing multiple vite config files. Like,


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: {
}
}
})

package.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"
},
}


This works very fine when I execute npm run build:swiper or npm run build:viewer independently, but once I execute npm run build:lib, only qy-viewer is created.

Are there any way to avoid deleting files in dist directory by vite build ?


More From » typescript

 Answers
5

Set build.emptyOutDir to false:


import { defineConfig } from 'vite'

export default defineConfig({
build: {
emptyOutDir: false,
},

})

[#405] Friday, January 28, 2022, 2 Years  [reply] [flag answer]
Only authorized users can answer the question. Please sign in first, or register a free account.
koltenb

Total Points: 276
Total Questions: 92
Total Answers: 101

Location: North Korea
Member since Fri, Nov 4, 2022
1 Year ago
;