unexpected react exports example es6 javascript ecmascript-6 es6-modules

javascript - exports - react import js



Importación del módulo ES6 que da “Uncaught SyntaxError: identificador inesperado” (2)

Para un proyecto personal, estoy tratando de usar la importación de ES6 para escribir un código más limpio. Como primera prueba, estoy escribiendo un objeto que debería generar un menú. El código completo funciona cuando estoy cargando la clase directamente, pero al usar la importación y exportación en ES6, se produce un error "Error de sintaxis no detectada: identificador inesperado" en la línea de import en main.js

Tengo los siguientes archivos:

activo / js / menu.module.js

''use strict''; export default class Menu { ... }

activos / js / main.js

import Menu from "./menu.module.js"; window.addEventListener(''DOMContentLoaded'', () => { const menu = new Menu(); });

index.html

<script type="module" src="assets/js/menu.module.js"></script> <script src="assets/js/main.js">

Tenga en cuenta que estas son sólo las líneas de código relevantes.

Usar la línea <script type="module"> o no, no parece hacer ninguna diferencia para mí. Tengo habilitados tanto los indicadores de cromo para los módulos experimentales como los ES6, ya que sin ellos recibí un error sobre la no definición de import .

La versión de Chrome sería 62, por lo que, de acuerdo con diferentes fuentes (incluido el propio registro de actualización de Google), debería funcionar, incluso sin las marcas.

¿Alguien puede aclararme por qué esto no funciona y qué estoy haciendo mal?


Como @Bergi mencionó en el comentario, agregar type="module" a la línea de importación main.js solucionó el problema. Todo está funcionando ahora.

Gracias a todos los que respondieron y trataron de ayudar.


Por lo que puedo ver, está intentando cargar el archivo menu.module.js mientras que en realidad se llama menu.js

PD: Por lo que recuerdo, también podría eliminar el .js de la declaración de importación.