В Typescript 3.8 представлен функционал ожидания верхнего уровня. Это здорово для меня! Я включаю его, задав для параметров module
и moduleResolution
в tsconfig
значение ESNext
и node
соответственно.
Внезапно проблема, однако, мое приложение больше не загружается. Вместо этого выдает ошибку -SyntaxError: Невозможно использовать оператор импорта вне модуля`
Просматривая мой код, я точно знаю, где выдается ошибка, но не знаю, как ее исправить. Я добавил type:module
к своему package.json
, но все равно ничего не получилось.
Вот посмотрите, как выглядит мой файл ввода boot.ts
. Под капотом мы запускаем сервер express.
import { Server } from "./api/server";
import {Storage} from "./boot_storage";
import BackedLogger from "./logger/logger";
const storage = new Storage();
storage.boot()
.then(() => {
Server.Instance.startServer(BackedLogger)
});
Я знаю, что это не тонна до go вкл. Я до сих пор плохо понимаю импорт в Typescript / Node. Я более чем готов ответить на вопросы и дать разъяснения.
Я более чем готов изменить способ запуска моего приложения, чтобы заставить его работать, вот как хорошо работает асинхронность верхнего уровня / ждать будет для меня.