UNPKG

tav-ui

Version:
45 lines (40 loc) 1.04 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var vue = require('vue'); function useScript(opts) { const isLoading = vue.ref(false); const error = vue.ref(false); const success = vue.ref(false); let script; const promise = new Promise((resolve, reject) => { vue.onMounted(() => { script = document.createElement("script"); script.type = "text/javascript"; script.onload = function() { isLoading.value = false; success.value = true; error.value = false; resolve(""); }; script.onerror = function(err) { isLoading.value = false; success.value = false; error.value = true; reject(err); }; script.src = opts.src; document.head.appendChild(script); }); }); vue.onUnmounted(() => { script && script.remove(); }); return { isLoading, error, success, toPromise: () => promise }; } exports.useScript = useScript; //# sourceMappingURL=useScript2.js.map