Является ли это хороший способ запуска фрагментов кода последовательно?

Это хороший способ запуска фрагментов кода последовательно?

Это хороший способ […]

НЕТ , однако это будет работать, если JavaScript внутри является синхронным. В тот момент, когда вы решите сделать что-то асинхронное (например, fetch.js и download.js звучат так, как будто они сделают что-то асинхронное), это не сработает.


Как насчет просто обернуть и показать асинхронную функцию в каждом из ваших файлов

Например, у вас может быть ваш fetch.js имеющий функцию-обертку с именем function myFetch(){ ... } и ваш download.js имеющий функцию-обертку с именем function myDownload(){ ... } а затем просто используйте await для каждого Функция-обертка, которую вы показали из каждого файла скрипта.

 // fetch.js file function myFetch(){ return new Promise((resolve)={amp}gt;{ setTimeout(()={amp}gt;{ console.log("my Fetch Done"); resolve("myFetch"); }, 500); }) } // download.js file function myDownload(){ return new Promise((resolve)={amp}gt;{ setTimeout(()={amp}gt;{ console.log("My download done"); resolve("myDownload"); }, 100); }) } // main.js file async function myMain(){ // "synchronous" const res1 = await myFetch(); const res2 = await myDownload(); console.log('final log', res1, res2); } myMain(); 
Понравилась статья? Поделиться с друзьями:
JavaScript & TypeScript
Adblock
detector