Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

async-script-loader

Package Overview
Dependencies
Maintainers
1
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

async-script-loader

Load a script asynchronously

  • 0.0.1
  • latest
  • Source
  • npm
  • Socket score

Version published
Maintainers
1
Created
Source

Build Status

Async Script Loader

The package will append a script to the body and load it asynchronously.

There are a few other packages that do very similar things, however, I've found them all to load the script every time it is requested. A lot of the time the intention is to load the script once and then resolve immediately if it is already resolved. For example a React component that needs to load a 3rd party library for it work can load it every time the component is used, but the script will only be appended once (the behavior can be overwritten).

Basic Usage

Simply import the module and pass it the src to load.

import asyncScriptLoader from 'async-script-loader'

asyncScriptLoader('https://url.to/script.js')
      .then(() => {
        console.log('script has been loaded')
      })
      .catch(err => console.log(err))

Callback

Some scripts provide can take a callback that is executed once the script is loaded and ready for use (e.g. Google Maps). Just set the callback as CALLBACK_PLACEHOLDER and it will replaced with one when executing. The returned Promise will be resolved when that callback is called instead of when the script has been loaded.

import asyncScriptLoader from 'async-script-loader'

asyncScriptLoader('https://url.to/script.js?callback=CALLBACK_PLACEHOLDER')
      .then(() => {
        console.log('script has been loaded')
      })
      .catch(err => console.log(err))

Loading Everytime

If you want to load the script every time it is requested, simply:

import asyncScriptLoader from 'async-script-loader'

asyncScriptLoader('https://url.to/script.js', true) // Second parameter is reload
      .then(() => {
        console.log('script has been loaded')
      })
      .catch(err => console.log(err))

Keywords

FAQs

Package last updated on 27 Jun 2018

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc