From 5ad0747f32c00f2f8a342f5564b53ec845805318 Mon Sep 17 00:00:00 2001 From: alex8088 <244096523@qq.com> Date: Sat, 11 Mar 2023 20:29:06 +0800 Subject: [PATCH] feat: support for renderer debugging (#130) --- src/cli.ts | 7 ++++++- src/electron.ts | 7 ++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/cli.ts b/src/cli.ts index 8849b44..7a5ad39 100644 --- a/src/cli.ts +++ b/src/cli.ts @@ -59,7 +59,12 @@ cli .alias('serve') .alias('dev') .option('-w, --watch', `[boolean] rebuilds when main process or preload script modules have changed on disk`) - .action(async (root: string, options: GlobalCLIOptions) => { + .option('--remoteDebuggingPort ', `[string] port for remote debugging`) + .action(async (root: string, options: { remoteDebuggingPort?: string } & GlobalCLIOptions) => { + if (options.remoteDebuggingPort) { + process.env.REMOTE_DEBUGGING_PORT = options.remoteDebuggingPort + } + const { createServer } = await import('./server') const inlineConfig = createInlineConfig(root, options) diff --git a/src/electron.ts b/src/electron.ts index 31c9fa2..edb260f 100644 --- a/src/electron.ts +++ b/src/electron.ts @@ -114,7 +114,12 @@ export function startElectron(root: string | undefined, logger: Logger): ChildPr const inspect = !!process.env.VSCODE_INSPECTOR_OPTIONS - const ps = spawn(electronPath, ['.']) + const args: string[] = [] + if (!!process.env.REMOTE_DEBUGGING_PORT && process.env.NODE_ENV_ELECTRON_VITE === 'development') { + args.push(`--remote-debugging-port=${process.env.REMOTE_DEBUGGING_PORT}`) + } + + const ps = spawn(electronPath, ['.'].concat(args)) ps.stdout.on('data', chunk => { !inspect && chunk.toString().trim() && logger.info(chunk.toString()) })