test(code-split): code split optimization

This commit is contained in:
vben
2020-12-04 23:35:58 +08:00
parent 81e904098d
commit 4cca007176
3 changed files with 39 additions and 5 deletions

20
build/vite/optimizer.ts Normal file
View File

@@ -0,0 +1,20 @@
import type { GetManualChunk, GetManualChunkApi } from 'rollup';
//
const vendorLibs: { match: string[]; output: string }[] = [
{
match: ['xlsx'],
output: 'xlsx',
},
];
// @ts-ignore
export const configManualChunk: GetManualChunk = (id: string, api: GetManualChunkApi) => {
if (/[\\/]node_modules[\\/]/.test(id)) {
const matchItem = vendorLibs.find((item) => {
const reg = new RegExp(`[\\/]node_modules[\\/]_?(${item.match.join('|')})(.*)`, 'ig');
return reg.test(id);
});
return matchItem ? matchItem.output : null;
}
};