如何在Electron中设置铬命令行标志?

时间:2018-07-20 17:15:47

标签: javascript google-chrome electron chromium

我正在开发Electron应用程序,需要启用以下Chromium标志GuestViewCrossProcessFrames才能使缩放与Webview一起使用。

我尝试在main.js中调用以下行,但似乎不起作用。还尝试过为BrowserWindow和webview启用插件。

app.commandLine.appendSwitch('--enable-features=GuestViewCrossProcessFrames');

有人可以帮助我设置此标志吗?谢谢。

4 个答案:

答案 0 :(得分:0)

我不清楚为什么电子会这样做,尽管您指定的特定标志在电子中已明确禁用

https://github.com/electron/electron/blob/bcbcb4c6436e84e7f1f2387c2d7581bbdadb5732/brightray/browser/browser_main_parts.cc#L185-L187

所以您不能动态启用它。

答案 1 :(得分:0)

要使用app.commandLine.appendSwitch,请确保不使用'-',呼叫应如下所示

app.commandLine.appendSwitch('enable-features=GuestViewCrossProcessFrames');

答案 2 :(得分:0)

根据the docs,调用appendSwitch的正确方法是:

app.commandLine.appendSwitch(switch[, value])

OJ Kwon's answer中所述,显然enable-features被Electron明确禁用。如果不是这样,则可以使用以下语法进行设置:

app.commandLine.appendSwitch('enable-features', 'GuestViewCrossProcessFrames');

有关更多示例,请参见Supported Chrome Command Line Switches

答案 3 :(得分:0)

您可以通过致电

进行设置
const { app } = require('electron');
app.commandLine.appendSwitch('enable-features', 'GuestViewCrossProcessFrames');
app.on('ready', () => {
// place your code.
}

注意:您需要在发出就绪事件之前调用它。