Никита
Window .find() .populate('creator') .exec() .then((windows) => {
W.Ed.
Promise.all копни
Yuriy
Или bluebird'овский Promise.map. При выполнении множества запросов может быть полезным ограничить их concurrency.
W.Ed.
у нас знаменательное кол-во участников в конфе собралось
Yuriy
Дык еще вчера. Кто-то даже пентаграмму выкладывал )
W.Ed.
>Golodnyi joined the group
W.Ed.
кто-то ушел, видимо
Vlad
Никита
Пробую c Promise.map Window .find() .populate('creator') .exec() .then((windows) => { Promise.map(windows, window => { console.log('map'); let url = ...; request(let, function (error, response, body) { console.log('REQUEST'); return { ... } }); }).then(results => { console.log("done", results); return res.render('index', {user: req.user, myVar: results}); }); }) .catch((err) => console.log('Error: ', err)); порядок вывода такой: map done [ undefined ] REQUEST
Yuriy
В теле map'а нужно вернуть промис. Либо сделай const request = Promise.promisifyAll(require'request'));, либо return new Promise(function (resolve, reject) { // тут дёргаешь resolve() в коллбэке реквеста }.
Yuriy
Window .find() .populate('creator') .exec() .then((windows) => { Promise.map(windows, window => { console.log('map'); let url = ...; return new Promise(function (resolve, reject) { request(let, function (error, response, body) { console.log('REQUEST'); if (error) { return reject(error); } return resolve({ ... }); }); }); }) .then(results => { console.log("done", results); return res.render('index', {user: req.user, myVar: results}); }); }) .catch((err) => console.log('Error: ', err));
Никита
Спасибо большое :)
Yuriy
Пожалуйста.
Никита
ещё вот такой вопросик немного не по теме. Как в массиве объектов найти объекты с одинаковым полем?
Evgeny
Для этого должен быть плагин jquery, определенно
Damir
Для этого должен быть плагин jquery, определенно
Лучше юзать prototype.js, он эффектнее перебирает массив
Roman
:)
hamper 𓅝
arr.reduce((r, x) => {r[x.field] ? r[x.field] = [x] : r[x.field].push(x); return r},{})
hamper 𓅝
вот так например, на выходе будет объект по ключам и в каждом ключе массив с этим ключом
Anonymous
гайз, а не подскажите, чем мигрировали с mysql на postgres? желательно на ubuntu или macos
Никита
Может я неправильно объяснил :) Есть масив объектов: [ { a: { b: 1, c: 2, d: [{ e: 4 }] } }, { a: { b: 1, c: 7, d: [{ e: 4 }] } }, { a: { b: 1, c: 2, d: [{ e: 14 }] } }] например одинаковое поле 'e' и хочется поулчить вот такой массив: [ { a: { b: 1, c: 2, d: [{ e: 4 }, { e: 4 }] } }, { a: { b: 1, c: 7, d: [{ e: 4 }] } }]
Aleksej
попробуй редюсом
hamper 𓅝
тут проблема что он вложенные структуры мержить хочет
Aleksej
ну как вариант - редюс, сравнивать структуры
hamper 𓅝
первое что в голову приходит это рекурсия
Aleksej
если похожие - то мерджить, если нет, то пушить в аккумулятор
Aleksej
но как сравнивать - это да, без рекурсии никак
Никита
я чего-то не могу придумать сюда рекурсию
Никита
Aleksej
я чего-то не могу придумать сюда рекурсию
структура обьектов известна или рандомна?
Никита
известна
Aleksej
тогда не нужна рекурсия
Никита
https://i.gyazo.com/3b964856968493cfe495f5eb29fbd244.png
Никита
вот так генерируются объекты
Никита
я их на яндех мапах рисую
Никита
и так как координаты могут совпадать
Никита
объекты надо мерджить
Никита
вот
Aleksej
о, это получится не просто редюс
Aleksej
а мап редюс
Dreamerinnoise
я чего-то не могу придумать сюда рекурсию
попробуй взять лодаш и с ним через uniq() сделать
Никита
я уже через редьюс сделал :)
Kanat
Привет всем
Kanat
Можете помочь?
Kanat
Сегодня положил себе на кошелёк, не учедэл комиссию, можете скинуть 20 руб?
VEgoshin
Конечно же нет!
Vlad
лол
Dmitry
и нужно быть толерантным к чужому коду и перфекционистом к своему)
Dreamerinnoise
хто нить работал с texturepacker?
Никита
А как лучше?
Vladimir
а еще не надо использовать геокодинг яндекса
Никита
😃
Никита
а какой лучше? гугловый?
Vladimir
Надо смотреть условия лицензии
Vladimir
У яндекса нет АПИ публичного по моему вообще
Vladimir
У гугла есть, но вроде бы есть требование использовать только для отображения на гугл картах
Vladimir
лучше все эти запросы с фронтэнда делать
Anonymous
ребята подскажите как лучше сделать есть функция генератор внутри нее вызывается другая(обычная в колбеке которой) нужно илднуть другой генератор
Anonymous
Все это обернуто в со
Vladimir
пример?
Anonymous
пример?
https://jsbin.com/vomoqoparo/1/edit?js,output
Игорь
Ребята всем привет. Я новичок в node.js. Посоветуйте пожалуйста хорошую сборку или обучающий материал. Чтоб была правильная структура, RESTApi, возможность генерации CRUD c консоли.
Алексей
попробуй Sails.js http://sailsjs.org/documentation/reference/command-line-interface/sails-generate
Anton
После sailsjs пробуй trailsjs.
А потом пойми, что ничего лучше писанины руками нет и используй express/koa
Игорь
Спасибо))
Dmitry
я юзаю expressjs
Dmitry
четка и панятна
Vladimir
https://jsbin.com/vomoqoparo/1/edit?js,output
нельзя так сделать
Vladimir
функция принимает обычный колбэк и вызывает его синхронно
Vladimir
никак
Alex
Как это можно обойти ?
Не использовать ноду
Anonymous
Не использовать ноду
Лучше бы что то полезное написал ,а не язвил
Vitaly
Лучше бы что то полезное написал ,а не язвил
Вы бы документацию прочитали
Mikhail
А никто не сталкивался с такой проблемой: git reset --hard head~1 fatal: ambiguous argument 'head~1': unknown revision or path not in the working tree. Use '--' to separate paths from revisions, like this: 'git <command> [<revision>...] -- [<file>...]'
Mikhail
По мануалам в инете не очень ястно