Я новичок в JS / nodejs, поэтому, пожалуйста, простите меня, если я не могу задать конкретный вопрос.
Таким образом, в принципе, если у меня есть две асинхронные функции,
async function init() {...}
async function main() {...}
Как я могу убедиться, что вызвал main () после того, как init () завершил свои асинхронные запросы?
В частности, я хочу использовать модуль https://www.npmjs.com/package/hot-import
, тогда как на его странице есть пример кода:
async function main() {
const MODULE_CODE_42 = 'module.exports = () => 42'
const MODULE_CODE_17 = 'module.exports.default = () => 17'
const MODULE_FILE = path.join(__dirname, 't.js')
fs.writeFileSync(MODULE_FILE, MODULE_CODE_42)
const hotMod = await hotImport(MODULE_FILE)
. . .
Пример кода работает, как есть, но когдаЯ помещаю это в функцию обратного вызова события, все начинает ломаться - это работает для первого триггера события, но не для второго.
Я думаю, что проблема не в константе hotMod
, а в await hotImport в async функция, которая вызывает проблему.Таким образом я пытаюсь определить hotMod
как глобальную переменную и сделать hotMod = await hotImport(MODULE_FILE)
в async init()
функции до вызова main()
.Но пока я не смог, так как я довольно новичок в JS / nodejs.
Пожалуйста, помогите.Спасибо.