electron-vite-vue/vite.config.ts
2021-05-16 19:53:54 +08:00

62 lines
1.3 KiB
TypeScript

require('dotenv').config({ path: join(__dirname, '.env') })
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import { join } from 'path'
// import typescript from '@rollup/plugin-typescript'
import { builtins } from './script/utils'
import {
// ensureCwdCrrect,
esm2cjs,
} from './script/plugins'
const root = join(__dirname, 'src/render')
// https://vitejs.dev/config/
export default defineConfig({
plugins: [
vue(),
esm2cjs([
'electron',
'electron-store',
]),
],
root,
base: './', // index.html 中静态资源加载位置
server: {
port: +process.env.PORT,
},
resolve: {
alias: {
'@render': join(__dirname, 'src/render'),
'@main': join(__dirname, 'src/main'),
'@src': join(__dirname, 'src'),
'@root': __dirname,
},
},
optimizeDeps: {
exclude: ['electron'],
},
build: {
outDir: join(__dirname, 'dist/render'),
emptyOutDir: true,
minify: false,
commonjsOptions: {},
assetsDir: '', // 相对路径 加载问题
sourcemap: true,
rollupOptions: {
plugins: [
// typescript({ module: 'ESNext' }),
// ensureCwdCrrect(join(root, 'main.ts')),
],
external: [
...builtins(),
'electron',
],
output: {
format: 'cjs',
},
},
},
})