Я работаю над хромированными расширениями в электронном приложении.Согласно документации, я хочу запустить каждый скрипт контента в отдельном изолированном контексте, используя электроны webFrame.executeJavaScriptInIsolatedWorld
с определенным идентификатором мира для каждого расширения.
webFrame.executeJavaScriptInIsolatedWorld(1001, [
{ code }
])
Эти скрипты содержимого используют API-интерфейсы Chrome с использованием объекта window.chrome
.Для предоставления объекта Chrome для каждого изолированного мира мне нужно запустить некоторый скрипт, который создаст объект Chrome и прикрепит его к объекту окна.Проблема здесь в том, что пользовательский скрипт, который я использую для создания объекта chrome, использует электронные и узловые модули.
const config = ipcRenderer.sendSync(channelName, extensionId)
Поскольку эти модули недоступны в изолированных мирах (кроме 999), я получаю модуль не найден ошибок для require
и electron
Есть ли способполучить доступ к узлам и электронным модулям в изолированных мирах, кроме 999?