Добрый день, я понимаю, что на эту тему куча информации в интернете. Я честно пытался сам разобраться, но возможно сегодня день неудачный и до меня не может дойти, каким образом мне совместить синхронный код в nodejs и ассинхронный.
Есть функции
a()
b()
c()
Три функции обращаются к апи, получают данные и записывают данные с помощью fs.writeFileSync
Мне надо, чтобы эти три функции работали ассинхронно, а затем после их выполнения выполнить функцию
start()
Как мне заблокировать поток и дождаться пока сработают эти функции
x_dmitry_x, Моё решение тоже подходит. Тут проблема в том, что человек использует синхронный метод из модуля File System. Ваше решение конечно элегантнее ;)
Qu1eeeOJ, x_dmitry_x,
что-то я совершенно запутался, если я использую какой-либо из предложенных вариантов, то получаю ошибку await is only valid in async functions and the top level bodies of modules, если я дописываю тайп модуль, то мне выдают ошибку, что у меня эти функции экспортируются модулями и подключаются к основной страницы скрипта через рекваер. Если я указываю тайп коммон жс, то опять ругается на топ левел await is only valid in async functions
Mark321,
await is only valid in async functions and the top level bodies of modules: await можно использовать только в асинхронных функциях и в начале модуля.
Вам нужна функция, которая бы запускала ваше приложение, например:
Qu1eeeOJ, У меня функции пушат информацию в файл.тхт. Затем функция старт берет эти данные и на основе них что-то делает. Т.к все функции запускаются ассинхронно. То у меня функция старт говорит, что данных нет и выдает ошибку, мол данных нет, что и понятно