Recibo un error en el que electronjs no puede cargar el script de precarga. Estoy creando una herramienta en la que puedo cargar un archivo de texto y me devolverá el contenido del archivo.
Tengo entrada de archivo con id 'cargar' en mi index.html.
Principal.js
const { app, BrowserWindow, dialog, ipcMain } = require("electron"); const path = require("path"); function createWindow() { const win = new BrowserWindow({ width: 800, height: 600, webPreferences: { preload: path.join(__dirname, "preload.js"), }, }); win.webContents.openDevTools(); win.loadFile("index.html"); } ipcMain.on("file-request", (event) => { if (process.platform !== "darwin") { dialog .showOpenDialog({ title: "Select the File to be uploaded", defaultPath: path.join(__dirname, "../assets/"), buttonLabel: "Upload", filters: [ { name: "Text Files", extensions: ["txt", "docx"], }, ], properties: ["openFile"], }) .then((file) => { console.log(file.canceled); if (!file.canceled) { const filepath = file.filePaths[0].toString(); console.log(filepath); event.reply("file", filepath); } }) .catch((err) => { console.log(err); }); } });precargar.js
const { ipcRenderer } = require("electron"); const uploadFile = document.getElementById("upload"); uploadFile.addEventListener("click", () => { ipcRenderer.send("file-request"); }); ipcRenderer.on("file", (event, file) => { console.log("Obtained File from main process: " + file); });He solucionado el problema haciendo lo del selector de documentos en renderer.js y haciendo exposeInMainWorld en preload.js