Не может требовать node_modules в электронном рабочем процессе - PullRequest
0 голосов
/ 29 января 2019

Вопрос

Я пытаюсь использовать веб-работников в электронном виде.Пока что я могу создать рабочий процесс из процесса визуализации, но когда я пытаюсь выполнить require('some_module') в рабочем процессе, процесс завершается с ошибкой.

Невозможнонайти модуль 'some_module' .

Загрузчик cjs не может найти мой модуль.Но когда я выполняю тот же самый вызов require из процесса рендеринга, я могу require модуль.

Я выполнил все шаги, упомянутые здесь .Также я установил опцию nodeIntegrationInWorker: true и могу без проблем вызывать require вызовы встроенных в узел модулей, таких как fs.


Несколько замечаний

  1. __dirname в обработанном процессе преобразуется в

    root / node_modules / электрон / dist / resources / Electron.asar / Renderer

    и в рабочем процессе разрешается до

    root / node_modules / electronic / dist / resources / Electron.asar / worker

    доКак я уже читал, функция require должна найти мой модуль в node_modules dir, который является родительским для renderer и worker dir

  2. Беглый взгляд на глобальный process в работнике показывает, что process.type равен worker, а process.argv[1] равен --type=renderer, что я нахожу странным.


Мета : Электронная версия = "4.0.0", платформа = "win32", arch = "x64",node version = "v10.11.0"

Любая помощь в этом отношении будет принята.

...