Как использовать крипто в Электрон - PullRequest
0 голосов
/ 30 апреля 2020

Я пытаюсь использовать крипто в моем электронном проекте. Я получаю сообщение об ошибке «Uncaught TypeError: crypto.randomBytes не является функцией» в консоли DevTool. Вот что я сделал:

  • Создан пример электронного проекта, как упомянуто здесь
  • Добавлен crypto = require('crypto') в качестве первой строки предварительной загрузки. js
  • Добавлено console.log(crypto.randomBytes(4)) в качестве первой строки в рендерере. js

Я получаю ошибку, упомянутую выше. Гугл не выдвинул соответствующих ответов.

Как мне поступить?

Заранее спасибо

1 Ответ

0 голосов
/ 01 мая 2020

Chromium уже содержит глобальную переменную, называемую «crypto», поэтому вы не можете переназначить ее и должны изменить имя вашей глобальной переменной, например

nodeCrypto = require('crypto') // or window.nodeCrypto = require('crypto')

, а затем в средство визуализации

console.log(nodeCrypto.randomBytes(4))
* 1006. * Или вы можете добавить nodeIntegration:true в webPreferences блоке в BrowserWindow параметрах и использовать require непосредственно от рендерера в некоторых ваших модулях (если вы не хотите помещать global в файл предварительной загрузки).
const crypto = require('crypto'); // or const crypto = window.require('crypto')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...