vtils
Version:
一个面向业务的 JavaScript/TypeScript 实用程序库。
23 lines (22 loc) • 567 B
JavaScript
exports.__esModule = true;
exports.prepareData = prepareData;
var _isPromiseLike = require("./isPromiseLike");
/**
* 准备数据。
*
* @param getter 数据源
*/
function prepareData(getter) {
return Promise.all(Object.keys(getter).map(function (key) {
var v = getter[key]();
return (0, _isPromiseLike.isPromiseLike)(v) ? v.then(function (value) {
return [key, value];
}) : [key, v];
})).then(function (list) {
return list.reduce(function (res, item) {
res[item[0]] = item[1];
return res;
}, {});
});
}
;