UNPKG

jjb-lc-designable

Version:

基于alibaba-designable源码二次封装的表单设计器。

28 lines 935 B
import { getNpmCDNRegistry } from '../registry'; import { globalThisPolyfill } from 'jjb-lc-designable/shared'; export const loadScript = async props => { const options = { base: getNpmCDNRegistry(), ...props }; if (globalThisPolyfill[props.root]) return globalThisPolyfill[options.root]; const path = `${options.base}/${options.package}/${options.entry}`; return new Promise((resolve, reject) => { const script = document.createElement('script'); script.type = 'text/javascript'; script.async = false; script.src = path; script.onload = () => { const module = globalThisPolyfill[options.root]; globalThisPolyfill['define'] = define; resolve(module); script.remove(); }; script.onerror = err => { reject(err); }; const define = globalThisPolyfill['define']; globalThisPolyfill['define'] = undefined; document.body.appendChild(script); }); };