LaiTool_PRO/electron.vite.config.ts

59 lines
1.4 KiB
TypeScript
Raw Normal View History

2025-08-19 14:33:59 +08:00
import { resolve } from 'path'
import { defineConfig, externalizeDepsPlugin, bytecodePlugin } from 'electron-vite'
import vue from '@vitejs/plugin-vue'
import AutoImport from 'unplugin-auto-import/vite'
import Components from 'unplugin-vue-components/vite'
import tsconfigPaths from 'vite-tsconfig-paths'
import { NaiveUiResolver } from 'unplugin-vue-components/resolvers'
export default defineConfig({
main: {
resolve: {
alias: {
'@': resolve('src'),
'@renderer': resolve('src/renderer/src')
}
},
plugins: [externalizeDepsPlugin(), bytecodePlugin(), tsconfigPaths()]
},
preload: {
plugins: [externalizeDepsPlugin(), bytecodePlugin()],
resolve: {
alias: {
'@': resolve('src'),
'@renderer': resolve('src/renderer/src')
}
}
},
renderer: {
resolve: {
alias: {
'@': resolve('src'),
'@renderer': resolve('src/renderer/src')
}
},
plugins: [
bytecodePlugin(),
vue({
template: {
compilerOptions: {
// 将webview标签标记为自定义元素
isCustomElement: (tag) => ['webview'].includes(tag)
}
}
}),
AutoImport({
imports: [
'vue',
{
'naive-ui': ['useDialog', 'useMessage', 'useNotification', 'useLoadingBar']
}
]
}),
Components({
resolvers: [NaiveUiResolver()]
})
]
}
})