Estoy tratando de usar axios para una solicitud http en mi archivo app.js, pero siempre recibo el mensaje de error:
Error de sintaxis no capturado: no se puede usar la declaración de importación fuera de un módulo.
Creé la carpeta js, los archivos y otros paquetes js usando el empaquetador de paquetes y ejecuté la sincronización del navegador para iniciar el servidor.
¿Qué me estoy perdiendo? Por favor ayuda, soy nuevo en JavaScript. Estoy en macOS Big Sur 11.5.1, nodo v14.17.4
import axios from 'axios' document.addEventListener('DOMContentLoaded', () => { const form = document.querySelector('form') form.addEventListener('submit', async (event) => { event.preventDefault() const username = document.querySelector('input').value const response = await axios.get(`https://api.github.com/users${username}`) console.log(response.data) }) })Agregue "tipo": "módulo" a su package.json
{ // ... "type": "module", // ... }Actualizar:
Debería verse así:
{ "name": "githubUser", "version": "1.0.0", "description": "", "main": "index.js", "type": "module", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "keywords": [], "author": "", "license": "ISC", "dependencies": { "axios": "^0.21.1" } }En el archivo
package.jsonmás cercano (desde la raíz del directorio del proyecto), agregue o actualice el campo"type"con un valor de"module". Se asegurará de que todos sus archivos.js,.tsy.mjsse interpreten como módulos ES.
... { ... "type": "module" ... } ...¿Dónde puedo agregarlo en este archivo?
{ "name": "githubUser", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "keywords": [], "author": "", "license": "ISC", "dependencies": { "axios": "^0.21.1" } }