Tengo un problema en el que mi require('robotjs') o cualquier otra biblioteca de terceros no funciona. Acabo de recibir un error que dice Unable to laod preload script: my_path_preload.js cuando uso bibliotecas de terceros. Funciona bien cuando necesito require('fs') o http
preload.js
const {contextBridge} = require('electron') const keyboard = require('robotjs') contextBridge.exposeInMainWorld('api', { type_something: (something) => { keyboard.typeString(something); } }) index.js
const {context, app, BrowserWindow, contentTracing } = require('electron'); const path = require('path'); if (require('electron-squirrel-startup')) { // eslint-disable-line global-require app.quit(); } const createWindow = () => { mainWindow = new BrowserWindow({ webPreferences: { preload: path.join(__dirname,'preload.js') } }); mainWindow.loadFile(path.join(__dirname, 'index.html')); mainWindow.webContents.openDevTools(); }; app.on('ready', createWindow); app.on('window-all-closed', () => { if (process.platform !== 'darwin') { app.quit(); } }); app.on('activate', () => { if (BrowserWindow.getAllWindows().length === 0) { createWindow(); } }); Dentro de mi archivo render.js , solo tengo una función simple que hace window.api.type_something(something)