use-script-loader
Version:
React.js script loader hook
25 lines (24 loc) • 922 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
function loadScript2(src, attrs, parentNode) {
return new Promise(function (resolve, reject) {
var script = document.createElement('script');
script.async = true;
script.src = src;
for (var _i = 0, _a = Object.entries(attrs || {}); _i < _a.length; _i++) {
var _b = _a[_i], k = _b[0], v = _b[1];
script.setAttribute(k, v);
}
script.onload = function () {
script.onerror = script.onload = null;
resolve(script);
};
script.onerror = function () {
script.onerror = script.onload = null;
reject(new Error("Failed to load " + src));
};
var node = parentNode || document.head || document.getElementsByTagName('head')[0];
node.appendChild(script);
});
}
exports.default = loadScript2;