Updated Jun 26 2021
Usually can use await only inside async functions. So itβs common to declare an immediately invoked async function expression to wrap it:
(async () => {
await fetch(/* ... */)
})()
or also declare a function and then call it:
const doSomething = async () => {
await fetch(/* ... */)
}
doSomething()
Top-level await will allow us to simply run
await fetch(/* ... */)
without all this boilerplate code.
With a caveat: this only works in ES modules.
For a single JavaScript file, without a bundler, you can save it with the .mjs
extension and you can use top-level await.
I wrote an entire book on this topic π
I also got a super cool course π
© 2023 Flavio Copes
using
Notion to Site
Interested in solopreneurship?