Получите «SyntaxError: Невозможно использовать оператор импорта вне модуля» при попытке импортировать класс в файле спецификации Jasmine - PullRequest
4 голосов
/ 24 октября 2019

В качестве упражнения я решил создать небольшую ванильную игру на JavaScript с использованием синтаксиса ES6, которая запускается в браузере. Программа работает отлично.

Я бы хотел проверить это с помощью Jasmine. Однако всякий раз, когда я пытаюсь выполнить импорт, например

import Deck from "../Deck.js";

Deck.js запускается:

export default class Deck {

я получаю сообщение об ошибке SyntaxError: Cannot use import statement outside a module.

Вещи, которые у меня естьсделано:

  • Установлен узел v13.0.1 - я думал, что эта версия узла допускает модули es6.
  • Установлен жасмин и инициализирован node ./node_module/jasmine/bin/jasmine init
  • Выполнить node ./node_module/jasmine/bin/jasmine- работает нормально без импорта
  • Выполнить node --experimental-modules ./node_module/jasmine/bin/jasmine - не работает с импортом
  • Попытка требуется вместо импорта: const Deck = require('../Deck.js'); - SyntaxError: Unexpected token 'export'

Как заставить жасмин работать с импортом? На данный момент я не могу включить файлы для тестирования!

Я уверен, что поступил неправильно, но я просто хочу провести несколько тестов строки cmd.

...