Как мне установить флаг командной строки хрома в Electron?

Я работаю над приложением Electron, и мне нужно включить следующий флаг Chromium GuestViewCrossProcessFrames, чтобы масштабирование работало с веб-просмотром.

Я попытался вызвать следующую строку в своем main.js, но, похоже, это не сработало. Также попытался включить плагины для BrowserWindow, а также для веб-просмотра.

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

Может ли кто-нибудь помочь мне установить этот флаг? Спасибо.

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
3
0
5 943
4

Ответы 4

Мне неясно, почему Electron делает это, хотя конкретный флаг, который вы указали, явно отключен в электроне

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

Таким образом, вы не можете включить его динамически.

Чтобы использовать app.commandLine.appendSwitch, убедитесь, что вы не используете '-', ваш вызов должен выглядеть так

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

Я не тестировал ваш метод - возможно, он работает, но я считаю, что более стандартный способ сделать это - разделить флаг и значение отдельно: app.commandLine.appendSwitch ('enable-features', 'GuestViewCrossProcessFrames');

RocketMan 06.08.2020 14:25

Согласно документы, правильный способ вызова appendSwitch:

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

Как упоминалось в Ответ OJ Kwon, очевидно, enable-features явно отключен Electron. Если бы это было не так, вы могли бы установить его с помощью следующего синтаксиса:

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

См. Дополнительные примеры в Поддерживаемые параметры командной строки Chrome.

вы можете установить, позвонив

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

примечание: вам нужно вызвать его до того, как будет выпущено готовое событие.

Другие вопросы по теме