У меня была похожая ситуация, но я использую php для внедрения скрипта. Я использую только vanilla javascript, и мне нужно было добавить расширение ".js" в мой импорт, чтобы оно работало. Я знаю, что с React расширение .js не нужно, но я предполагаю, что это будет зависеть от среды, в которой вы работаете. Надеюсь, это поможет кому-то еще.

ичного проекта я пытаюсь использовать импорт ES6 для написания более чистого кода. В качестве первого теста я пишу объект, который должен генерировать меню. Весь код работает, когда я непосредственно загружаю класс, но при использовании импорта и экспорта в ES6 выдает ошибку «Uncaught SyntaxError: Неожиданный идентификатор» наimport линия вmain.js

У меня есть следующие файлы:

активы / JS / menu.module.js

'use strict';

export default class Menu
{ ... }

активы / 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">

Обратите внимание, что это только соответствующие строки кода.

С помощью<script type="module"> линия или нет, казалось, не имеет никакого значения для меня. У меня есть и флаги chrome для экспериментальных, и для модулей ES6, так как без них я получил сообщение об ошибкеimport не определяется

Версия Chrome будет 62, поэтому, согласно различным источникам (включая сам журнал обновлений Google), это должно работать, даже без флагов.

Может кто-нибудь просветить меня, почему это не работает, и что я делаю неправильно?

Ответы на вопрос(2)

Ваш ответ на вопрос