打开 DevTools 时,Electron BrowserWindow 切换到暗模式

Lig*_*tCC 5 html css google-chrome-devtools electron darkmode

暗模式与 DevTools 的混淆

我正在从教程构建一个基本的电子应用程序。

我有一个带有一些基本 HTML 和 CSS 样式的 BrowserWindow 启动 - 只是蓝色和白色背景的“Awesome”这个词。但是,我的 Windows 和大多数允许我使用的应用程序(Chrome、VS Code 等)都设置为暗模式。

当我启动应用程序,它自带了一个白色背景,但只要我用Ctrl+ Shift+i打开开发工具,web视图转换到暗模式,既为开发工具,并为输出画面。

原始视图:

  • 在此处输入图片说明

打开 DevTools 后:

  • 在此处输入图片说明

甚至怪异-如果我关闭DevTools,它可以追溯到一个白色背景,那么如果再我开DevTools,它STAYS与原来的白色背景在主窗口视图(虽然DevTools本身似乎是在黑暗的模式)。

  • 在此处输入图片说明

题:

如何防止开发工具在打开时切换模式 - 至少在我的 Electron 应用程序的主显示屏上?


Electron BrowserWindow的webview代码

countdown.html

<html>
    <head>
        <link rel="stylesheet" href="./countdown.css" />
    </head>
    <body>
        <h1>Awesome!</h1>
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

countdown.css

h1 {
    font-family: sans-serif;
    color: blue;
}
Run Code Online (Sandbox Code Playgroud)

Lig*_*tCC 3

backgroundColor一个简单的解决方案,但一个选项是在创建窗口时显式设置该选项:

app.on('ready', _ => {
    mainWindow = new BrowserWindow({
        backgroundColor: '#FFF', // Add this new line
        height: 400,
        width: 900
    })
Run Code Online (Sandbox Code Playgroud)

此代码会将背景颜色设置为白色,并且第一次(或任何时间)打开 DevTools 时不会切换到深色模式。