Estoy tratando de hacer una aplicación simple por primera vez. Sin embargo, sigo recibiendo este error cada vez que intento importar cualquier paquete npm. No estoy seguro de lo que hice mal porque estoy usando el paquete npm electron-reload y eso no arroja ningún error.
ERROR: require() del Módulo ES
Este es mi tsconfig.json:
{ "compilerOptions": { "target": "ES5", "module": "CommonJS", "outDir": "./app/js/", "esModuleInterop": true, "forceConsistentCasingInFileNames": true, "strict": true, "skipLibCheck": true, }, "exclude": ["./app/js/**/*.js"], "compileOnSave": true }Este es el código en el que se arroja el error:
import Hwid from "hwid"; ipcMain.on("get-hwid", (event) => { console.log(Hwid()); }); Y por último, este es mi código BroswerWindow :
const window = new BrowserWindow({ width: 700, frame: false, height: 700, resizable: false, transparent: true, roundedCorners: true, icon: path.join(__dirname, "../design/imgs/dully_logo.png"), webPreferences: { contextIsolation: false, nodeIntegration: true, preload: path.join(__dirname, "preload.js"), devTools: false, }, }); window.loadFile(path.join(__dirname, "../design/index.html"));Estoy usando TypeScript porque lo prefiero más que JS normal, simplemente no sé qué hacer o por qué este error detiene mi desarrollo. Espero que el paquete funcione normalmente, pero nada funciona.
hwid es un módulo ESM y su tsconfig.json especifica escribir módulos usando CommonJS, que es la función require() . tsc (u otros compiladores) convierte sus declaraciones de import en llamadas require() , lo cual no está permitido con ESM (como dice el error). Utilice una versión anterior de hwid que pueda admitir ESM o cambie el module a 'es2020' y establezca moduleResolution en 'node' .
Prueba: const Hwid = require('hwid')