mirror of
https://github.com/electron-vite/electron-vite-vue
synced 2025-01-19 11:56:36 +08:00
feat: load .env
file for Electron-Main
This commit is contained in:
parent
5a3c6c7d23
commit
e522b5bbc6
@ -1,5 +1,9 @@
|
|||||||
import { rmSync } from 'fs'
|
import { rmSync } from 'fs'
|
||||||
import { defineConfig } from 'vite'
|
import {
|
||||||
|
type Plugin,
|
||||||
|
defineConfig,
|
||||||
|
loadEnv,
|
||||||
|
} from 'vite'
|
||||||
import vue from '@vitejs/plugin-vue'
|
import vue from '@vitejs/plugin-vue'
|
||||||
import electron from 'vite-plugin-electron'
|
import electron from 'vite-plugin-electron'
|
||||||
import renderer from 'vite-plugin-electron-renderer'
|
import renderer from 'vite-plugin-electron-renderer'
|
||||||
@ -9,6 +13,25 @@ rmSync('dist-electron', { recursive: true, force: true })
|
|||||||
const sourcemap = !!process.env.VSCODE_DEBUG
|
const sourcemap = !!process.env.VSCODE_DEBUG
|
||||||
const isBuild = process.argv.slice(2).includes('build')
|
const isBuild = process.argv.slice(2).includes('build')
|
||||||
|
|
||||||
|
// Load .env
|
||||||
|
function loadEnvPlugin(): Plugin {
|
||||||
|
return {
|
||||||
|
name: 'vite-plugin-load-env',
|
||||||
|
config(config, env) {
|
||||||
|
const root = config.root ?? process.cwd()
|
||||||
|
const result = loadEnv(env.mode, root)
|
||||||
|
// Remove the vite-plugin-electron injected env.
|
||||||
|
delete result.VITE_DEV_SERVER_URL
|
||||||
|
config.esbuild ??= {}
|
||||||
|
config.esbuild.define = {
|
||||||
|
...config.esbuild.define,
|
||||||
|
...Object.fromEntries(Object.entries(result)
|
||||||
|
.map(([key, val]) => [`process.env.${key}`, JSON.stringify(val)])),
|
||||||
|
}
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// https://vitejs.dev/config/
|
// https://vitejs.dev/config/
|
||||||
export default defineConfig({
|
export default defineConfig({
|
||||||
plugins: [
|
plugins: [
|
||||||
@ -33,6 +56,7 @@ export default defineConfig({
|
|||||||
external: Object.keys(pkg.dependencies),
|
external: Object.keys(pkg.dependencies),
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
plugins: [loadEnvPlugin()],
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user