Skip to content

Instantly share code, notes, and snippets.

@igoventura
Last active May 14, 2019 18:47
Show Gist options
  • Save igoventura/42a14de0dbe35f9b37dfa55fb2e78ac3 to your computer and use it in GitHub Desktop.
Save igoventura/42a14de0dbe35f9b37dfa55fb2e78ac3 to your computer and use it in GitHub Desktop.
class AsyncInjector {
constructor() {}
injectScript(
document: any,
src: string,
async: boolean = false,
callbackLoaded = () => {}
) {
let script = document.createElement("script");
let id = src.slice(src.lastIndexOf("/") + 1);
script.type = "text/javascript";
script.async = async;
script.onload = callbackLoaded;
script.src = src;
script.id = id;
if (!document.getElementById(id)){
document.getElementsByTagName("head")[0].appendChild(script);
}
}
}
class AsyncInjector{constructor(){}injectScript(e,t,c,a=(()=>{})){let n=e.createElement("script"),s=t.slice(t.lastIndexOf("/")+1);n.type="text/javascript",n.async=c,n.onload=a,n.src=t,n.id=s,e.getElementById(s)||e.getElementsByTagName("head")[0].appendChild(n)}}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment