Есть ли способ получить webFrame
контекст для внедрения chrome-api, как электрон делает для webContents (или процесса рендеринга) в файле lib/renderer/content-script-injector.js
номер строки функции 14 в версии electronicjs 3.0.14 .
Следующий код является выдержкой из электронного репо. runInThisContext является импортом 'vm' и, по-видимому, запускается по процессу восстановления электронов.
// Run the code with chrome API integrated.
const runContentScript = function(extensionId, url, code) {
const context = {};
require('./chrome-api').injectTo(extensionId, false, context);
const wrapper = `((chrome) => {\n ${code}\n })`;
const compiledWrapper = runInThisContext(wrapper, {
filename: url,
lineOffset: 1,
displayErrors: true
});
return compiledWrapper.call(this, context.chrome);
};