ScriptLoader - nekocell

scriptをloadするやつ

Tento skript by neměl být instalován přímo. Jedná se o knihovnu, kterou by měly jiné skripty využívat pomocí meta příkazu // @require https://update.greasyfork.org/scripts/431791/966495/ScriptLoader%20-%20nekocell.js

// ==UserScript==
// @name         ScriptLoader - nekocell
// @version      0.1
// @description  scriptをloadするやつ
// @author       nekocell
// @namespace    https://greasyfork.org/ja/users/762895-nekocell
// ==/UserScript==

class ScriptLoader {
  static loadScript(url) {
    return new Promise((resolve, reject) => {
      let newScript = document.createElement('script');
      let parentNode = document.head || document.documentElement;
 
      newScript.onload = function() {
        resolve();
      };
 
      newScript.onerror = function() {
        reject(new Error("FixedWailLoader : script load failed"));
      };
 
      newScript.async = false;
      newScript.src = url;
 
      parentNode.insertBefore(newScript, parentNode.firstChild);
    });
  }
}