UNPKG

vtils

Version:

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

32 lines (30 loc) 826 B
"use strict"; exports.__esModule = true; exports.jsonp = jsonp; var _loadResource = require("./loadResource"); var i = 0; /** * 发起 jsonp 请求。 * * @param url 请求地址 * @param keyOfCallbackName 回调函数名的键 */ 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(); (0, _loadResource.loadResource)({ path: url, type: _loadResource.LoadResourceUrlType.js }).catch(reject); }); }