You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
36 lines
946 B
36 lines
946 B
/** |
|
* @program: kicc-ui |
|
* @description: vite-plugin-compression配置 |
|
* 用于打包输出gzip todo: 注意这在Vite中不能正常工作,具体原因还在调查中 |
|
* 文档: https://github.com/anncwb/vite-plugin-compression |
|
* @author: wangxiang4 |
|
* @create: 2022/4/6 |
|
*/ |
|
|
|
import compressPlugin from 'vite-plugin-compression'; |
|
import type { PluginOption } from 'vite'; |
|
|
|
export function configCompressPlugin(compress: 'gzip' | 'brotli' | 'none', deleteOriginFile = false): PluginOption | PluginOption[] { |
|
const compressList = compress.split(','); |
|
|
|
const plugins: PluginOption[] = []; |
|
|
|
if (compressList.includes('gzip')) { |
|
plugins.push( |
|
compressPlugin({ |
|
ext: '.gz', |
|
deleteOriginFile, |
|
}) |
|
); |
|
} |
|
if (compressList.includes('brotli')) { |
|
plugins.push( |
|
compressPlugin({ |
|
ext: '.br', |
|
algorithm: 'brotliCompress', |
|
deleteOriginFile, |
|
}) |
|
); |
|
} |
|
return plugins; |
|
}
|
|
|