UNPKG

vtils

Version:

一个面向业务的 JavaScript/TypeScript 实用程序库。

28 lines (27 loc) 759 B
import { loadResource, LoadResourceUrlType } from "./loadResource.js"; var i = 0; /** * 发起 jsonp 请求。 * * @param url 请求地址 * @param keyOfCallbackName 回调函数名的键 */ export function jsonp(url, keyOfCallbackName) { if (keyOfCallbackName === void 0) { keyOfCallbackName = 'callback'; } return new Promise(function (resolve, reject) { var callbackName = "__vtils_jsonp_callbacks__" + i++; window[callbackName] = function (result) { resolve(result); delete window[callbackName]; }; var _url = new URL(url); _url.searchParams.set(keyOfCallbackName, callbackName); url = _url.toString(); loadResource({ path: url, type: LoadResourceUrlType.js }).catch(reject); }); }