Estoy tratando de importar otro archivo .js en mi archivo de servidor principal "App.js", pero sigo recibiendo el error de sintaxis:
SyntaxError: no se puede usar la declaración de importación fuera de un módulo
Incluí el "tipo": "módulo" en mi archivo package.json.
Puede ver la línea donde intento importar el archivo aquí;
import {Read as readSensor} from './Sensor.js';La función que estoy tratando de importar se ve así:
export async function Read() { const res = await fetch(SensorUrl); if(res.ok){ return await res.json(); } else{ throw new Error('Bad Reading'); } }AFAIK, la sintaxis de mi importación/exportación es correcta, por lo que realmente no puedo entender qué estoy haciendo mal.
Si está utilizando el nodo js v14 o superior, pruebe estos:
agregue "type": "module" en su paquete.json use --experimental-modules al iniciar su aplicación, por ejemplo: node --experimental-modules index.js
O puedes probar esto también:
agregue "type": "module" en su paquete.json y cambie el nombre de su archivo con una extensión .mjs, el archivo se verá como algo Sensor.mjs .
Siéntase libre de agregar un comentario si tiene algún problema, también agregue su archivo package.json con node version para una mejor depuración.
Echa un vistazo a este enlace , te puede ayudar.
Entonces, lo descubrí, y resulta que soy tonto. Estaba tratando de ejecutar esto con una versión desactualizada de node.js (12.14.1). Funcionó tan pronto como actualicé a la versión 16.14.2. Así que hoy he aprendido la lección muy valiosa de mantener mis cosas actualizadas. ¡Gracias por las respuestas!