Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

760
Vistas
No se puede usar la declaración de importación fuera de un módulo Electron React Typescript

¿Cómo resolver el famoso problema "Cannot use import statement outside a module" en una aplicación Electron-React-Typescript?

 //const { app, BrowserWindow } = require('electron'); import { app, BrowserWindow } from 'electron';

Error :

 import { app, BrowserWindow } from 'electron'; ^^^^^^ SyntaxError: Cannot use import statement outside a module

en package.json agregué:

 "type": "module",

devDependencies en paquete.json:

 "@types/node": "^14.14.28", "@types/react": "^17.0.2", "electron": "^11.2.3", "typescript": "^4.1.5", "webpack": "^5.21.2"

tsconfig.json:

 { "compilerOptions": { "target": "ES2018", "module": "CommonJS", "lib": ["dom", "esnext"], "outDir": "dist", "declaration": true, "declarationMap": true, "noEmit": true, "jsx": "react", "strict": true, "pretty": true, "sourceMap": true, "skipLibCheck": true, "noImplicitAny": false, "noImplicitThis": false, /* Additional Checks */ "noUnusedLocals": true, "noUnusedParameters": true, "noImplicitReturns": true, "noFallthroughCasesInSwitch": true, /* Module Resolution Options */ "moduleResolution": "node", "esModuleInterop": true, "allowSyntheticDefaultImports": true, "resolveJsonModule": true, "allowJs": true }, "include": ["src/**/*"], "exclude": [ "src/index.js", "dist", ] }

También agregué los complementos de babel.config.json:

 ["@babel/plugin-transform-modules-commonjs", { "allowTopLevelThis": true }],

y en paquete.json:

 "scripts": { "babel": "babel ./src/**/* -d dist", "start": "yarn run babel && electron .",
  • electrón : 11.2.3
  • mecanografiado: 4.1.5
  • nodo: v14.5.0
  • Sistema operativo: escritorio Ubuntu 18.04.4

¿Qué tengo que agregar/modificar para poder usar "importar"?

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Gracias al experto de Electron, descubrí dos errores que causaron ese problema:

  1. Modifiqué la ruta principal en package.json

    "main": "./src/main/main.ts" ---> "main": "./dist/main/main.js"

    porque electron solo puede entender el archivo compilado

  2. Lo eliminé en package.js en

    "type": "module"

    que de lo contrario requeriría cambiar archivos .js to .cjs

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda