ModelHandle/source/engine/io/externallibs.js
2024-07-03 23:29:35 +02:00

24 lines
667 B
JavaScript

let loadedExternalLibUrls = new Set ();
export function LoadExternalLibraryFromUrl (libraryUrl)
{
return new Promise ((resolve, reject) => {
if (loadedExternalLibUrls.has (libraryUrl)) {
resolve ();
return;
}
let scriptElement = document.createElement ('script');
scriptElement.type = 'text/javascript';
scriptElement.src = libraryUrl;
scriptElement.onload = () => {
loadedExternalLibUrls.add (libraryUrl);
resolve ();
};
scriptElement.onerror = () => {
reject ();
};
document.head.appendChild (scriptElement);
});
}