У мене є проект ApolloServer, який доставляє мені проблеми, тому я подумав, що можу оновити його і зіткнувся з проблемами при використанні останнього Babel. Мій "index.js":
require('dotenv').config()
import {startServer} from './server'
startServer()
І коли я запускаю його, я отримую помилку "SyntaxError: Неможливо використовувати оператор імпорту поза модулем". Спершу я намагався робити щось, щоб переконати TPTB *, що це модуль (без успіху). Тому я змінив "імпорт" на "вимагати", і це спрацювало.
Але зараз у мене є близько двох десятків "імпортів" в інших файлах, що дає мені таку ж помилку.
* Я впевнений, що корінь моєї проблеми полягає в тому, що я навіть не впевнений, що скаржиться на це питання. Я начебто припускав, що це Babel 7 (оскільки я приходжу з Babel 6 і мені довелося змінити попередньо встановлені налаштування), але я не впевнений на 100%.
Більшість того, що я знайшов для рішень, схоже, не стосується прямого Вузла. Як ось цей:
Модуль ES6 Імпорт, що дає "Uncaught SyntaxError: Несподіваний ідентифікатор"
Каже, це було вирішено шляхом додавання "type = module", але це, як правило, входить у HTML, у мене якого немає. Я також спробував використовувати старі пресети свого проекту:
"presets": ["es2015", "stage-2"],
"plugins": []
Але від мене виникає ще одна помилка: "Помилка. Файли плагінів / попередніх налаштувань не можуть експортувати об'єкти, а лише функції."
ОНОВЛЕННЯ: Ось залежності, з яких я почав:
"dependencies": {
"@babel/polyfill": "^7.6.0",
"apollo-link-error": "^1.1.12",
"apollo-link-http": "^1.5.16",
"apollo-server": "^2.9.6",
"babel-preset-es2015": "^6.24.1",
jest.config.js
до 'ts-jest/presets/js-with-ts'
- до сих пір деякі інші питання , але вирішити це один великий. ..... так, моя проблема була в тестуванні пов'язаних ... нормальні збірки були нормальні