Вот мой код:Почему функция карты не выполняется после обещания?
let promise = new Promise((resolve) => {
let dataArray = d3.csvParse(csvData);
return resolve(dataArray);
});
promise.then((dataArray: Array<Object>) => {
return _(dataArray).transform((result, item, name) => {
result[ item.district ] = result[ item.district ] || {};
result[ item.district ][ name ] = item;
return result;
}).value();
}).then(data => data.map(d => console.log(d))); // not loading
Я использую d3 для разбора CSV-файла. После того, как синтаксический анализ сделан, я разрешаю обещание и пытаюсь выполнить цепочку операций lodash на возвращаемом массиве. Я попытался связать методы преобразования и карты, а также попытался форсировать цепочку, используя _.chain(...)
.
Консоль не возвращает никаких ошибок, и я могу зарегистрировать массив данных в части then
.
Любые предложения приветствуются.
спасибо за ваш ответ. Я понимаю что ты имеешь ввиду. Есть ли способ сделать это в lodash? возможно, используя mapKeys/mapValues? – abedzantout
Должен признаться, что я не использую lodash, и это зависит от того, чего вы хотите достичь, когда вы наберете. Из того, что я понимаю, mapKeys будет использоваться для изменения имен свойств объектов, поэтому я не думаю, что это то, что вы хотите. mapValues может быть ... – Booster2ooo
спасибо за ваш ответ :) это решило мою проблему – abedzantout