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

223
Vistas
Importe el complemento Capacitor Community en un script vanilla js

Tengo una aplicación básica escrita en javascript puro (index.html, script.js) que puse en un proyecto CapacitorJs para permitirme crear aplicaciones ios/android. que funcionan perfectamente bien incluso en mi teléfono.

Pero ahora estoy tratando de usar un complemento de la comunidad de capacitores ( @capacitor-community/contacts ) pero necesito importarlo en mi script.js así

import { Contact, Contacts, NewContact } from '@capacitor-community/contacts';

Como no estoy usando mecanografiado, obviamente arroja un error.

¿Cómo puedo hacer para que funcione?

  • Intenté importarlo a través de un <script type="module"> en mi index.html y asignarlo a la variable de window global js para acceder a él en mi script.js pero no funciona.

  • También intenté convertir mi scripts.js a un mecanografiado y compilarlo con la siguiente configuración:

 { "target":"es5", "module":"es2015", "moduleResolution:"node" }

Y para que funcione, tuve que cambiar la cadena de importación a: import { Contact, Contacts, NewContact } from '../../nodes_modules/@capacitor-community/contacts';

Pero luego aparece un error en la consola que dice TypeError: 'text/html' is not a valid Javascript MIME type

  • He intentado también con la siguiente configuración
 "target":"commonjs",

Pero obtuve un error con "definir" que no se reconoce en el navegador.

  • También estoy al tanto de "bundledWebRuntime": true , que básicamente compila archivos de núcleo de capacitor en un .js que importa en su index.html. Pero no incluye paquetes comunitarios por lo que no es una solución.
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

No tiene nada que ver con mecanografiado. Su proyecto debe estar declarado para usar módulos ES, para poder usar funciones como import . No tengo claro su configuración exacta, pero si tiene un package.json , intente agregarle esto:

 { ... type: "module", }

Si solo tiene una configuración básica, es decir, una página html con un archivo js en una etiqueta de secuencia de comandos, debería poder hacer que funcione declarando su archivo js como un módulo como este:

 <script type="module" src="main.js"></script>
about 4 years ago · Juan Pablo Isaza 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