@awaitbox/window-loaded

1.0.5 • Public • Published

@awaitbox/window-loaded

Await for the window to be loaded.

npm i @awaitbox/window-loaded --save

The windowLoaded async function returns a promise that will resolve when the window's load event fires in the future (i.e. sub-resources like img tags, scripts, audio tags, etc, have finished loading), or resolves immediately if loaded already happened.

Learn more about the load event on MDN.

You can use it in async functions:

import windowLoaded from '@awaitbox/window-loaded'

async function main() {
  await windowLoaded()
  console.log( 'Ready to begin awesome!' )
}

main()

You can of course use it as a Promise:

import windowLoaded from '@awaitbox/window-loaded'

windowLoaded()
  .then( data => console.log( 'begin awesome!' ) )

Chain values will pass through if you use it in a Promise chain:

import windowLoaded from '@awaitbox/window-loaded'

fetch( ... )
  .then( ... )
  .then( windowLoaded ) // passes data through
  .then( data => console.log( 'use data for the awesome!', data ) )

Note

This is written in ES2016 JavaScript. To use this in pre-ES2016 environments, you'll need to run this through a transpiler like Babel (and I recommend using the fast-async plugin to get the best results). See some tips here on wiring it up with Webpack: http://2ality.com/2017/06/pkg-esnext.html.

Package Sidebar

Install

npm i @awaitbox/window-loaded

Weekly Downloads

1

Version

1.0.5

License

none

Last publish

Collaborators

  • trusktr