Невозможно использовать es6 импорт и экспорт с sequelize

1

Я использую convictjs для управления конфигурационными файлами для моего приложения nodejs. Файл с конфигурационной схемой называется "config.js", и он находится в папке "config".

Я использую инструкции импорта и экспорта es6

import convict from "convict";
import dotenv from "dotenv";
import configDev from "./config.dev";
import configProd from "./config.prod";
import configStage from "./config.stage";
.
.
.
export default config.getProperties();

Эти файлы конфигурации содержат учетные данные базы данных и другую необходимую информацию о базе данных, которую я использую в "index.js" для моделей sequelize.

Примечание. На раннем этапе процесса разработки мы попытались использовать es6 с продолжением в других проблемах, поэтому мы решили использовать es5 для моделей, миграций и семян.

В настоящее время, когда я пытаюсь выполнить миграции, seuqlize выдает ошибку, как показано ниже

ERROR: Error reading "config\config.js". Error: SyntaxError: Unexpected token 
import

Бабель настроен правильно, я могу перекрыть и запустить приложение без каких-либо проблем, кроме миграции данных. Любая помощь для решения этой проблемы очень ценится.

Теги:
ecmascript-6
sequelize.js
babeljs

1 ответ

2
Лучший ответ

Насколько я знаю, Node.js не поддерживает этот синтаксис еще так что вы должны использовать либо require или transpile код с Вавилонской перед казнью.

UPD: похоже, что возможно включить модули ES6 в Node.js, начиная с версии 10.12.0 https://nodejs.org/api/esm.html

node --experimental-modules my-app.mjs
  • 0
    Я коплю свой код, все приложение, кроме сценариев sequelize, написано в es6.
  • 0
    Мой скрипт npm выглядит так: «babel-node --presets env ./app.js --nodeEnv dev», который переносит код и запускает приложение.
Показать ещё 9 комментариев

Ещё вопросы

Сообщество Overcoder
Наверх
Меню