forked from opentiny/tiny-charts
-
Notifications
You must be signed in to change notification settings - Fork 0
/
vite.config.ts
56 lines (52 loc) · 1.82 KB
/
vite.config.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
import { resolve } from 'path';
import { defineConfig, loadEnv } from 'vite';
import vue from '@vitejs/plugin-vue';
import monacoEditorPluginModule from 'vite-plugin-monaco-editor'
const isObjectWithDefaultFunction = (module: unknown): module is { default: typeof monacoEditorPluginModule } => (
module != null &&
typeof module === 'object' &&
'default' in module &&
typeof module.default === 'function'
)
const monacoEditorPlugin = isObjectWithDefaultFunction(monacoEditorPluginModule)
? monacoEditorPluginModule.default
: monacoEditorPluginModule
export default defineConfig(({mode})=>{
const cwdEnv = loadEnv(mode, process.cwd())
const VITE_PUBLISH_URL = cwdEnv.VITE_PUBLISH_URL
return {
plugins: [vue(), monacoEditorPlugin({}),],
server: {
host: '0.0.0.0',
port: 8080,
},
define: {
'process.env': { ...process.env }
},
resolve: {
alias: {},
extensions: ['.js', '.jsx', '.ts', '.tsx', '.json', '.less', '.css', '.md','.mjs'],
},
base: process.env.NODE_ENV === 'production' ? VITE_PUBLISH_URL : './',
build: {
// 指定输出路径
outDir: 'dist',
// 生成静态资源的存放路径
assetsDir: 'assets',
// 小于此阈值的导入或引用资源将内联为 base64 编码,以避免额外的 http 请求。设置为 0 可以完全禁用此项
assetsInlineLimit: 4096,
// 指定使用哪种混淆器。默认为 Esbuild
minify: 'esbuild',
// 构建后是否生成 source map 文件
sourcemap: false,
// 默认情况下,若 outDir 在 root 目录下,则 Vite 会在构建时清空该目录。
emptyOutDir: true,
rollupOptions: {
input: {
index: resolve(__dirname, 'index.html'),
playground: resolve(__dirname, 'playground.html'),
},
},
},
}
});