@nodejs_ru

Страница 2109 из 2748
mr_makss
05.06.2018
01:14:59
Каждый пакет прежде чем взять нужно самому проверить корень пакета и от этого никуда не деться. Как ни крути

Naught
05.06.2018
01:15:48
Я так понял в теме использования пакетов стандартов нет. Совсем недавно был на докладе по Django так там вообще пакетный мир осуждали))
довольно странно, ведь, кажется, при создании джанги пытались сделать так, чтоб разрабы могли обмениваться кодом/модулями.

mr_makss
05.06.2018
01:17:03
Выяснилось, что есть недобросовестные разрабы и их стало очень много. Странно, что выяснилось так поздно...

Google
Naught
05.06.2018
01:17:25
Как будто их могло не быть

Sergei
05.06.2018
01:18:10
Так это человеческий фактор. Но использование пакетов с большим комюнити сглаживает эти проблемы.

mr_makss
05.06.2018
01:21:02
его стало очень много т.к. все программисты javascript из за происходящего на рынке труда

в итоге: один шаристый пишет. все остальные смотрят и кивают, но js прогеры такого же уровня Jwt можно использовать.

Кто-нибудь собирал webpack из исходников?

Abu
05.06.2018
01:33:01
Кто-нибудь собирал webpack из исходников?
Ты имеешь ввиду форкнуть репу и собрать самому?

mr_makss
05.06.2018
01:33:19
ага

Abu
05.06.2018
01:33:42
Ну я собирал, там же инструкция вроде есть

mr_makss
05.06.2018
01:35:42
Так вот. Недавно только yarn файлы правили после матерков на deep-extend

npm sequrity может сделать весело :))

El
05.06.2018
03:41:23


привет всем! Помогите решить проблему. пишу application, который управляет железом. Сервер общается с железом через node-serialport, сервер и клиент между собой - через socket.io. В общем крутиться все, делаю опросы регистров, все через promises. Все работает, за исключение одной вещи. Когда на железе происходит event, на самом деле железка пишет в регистр значение, которое я постоянно опрашиваю. Так вот при определенном значение какого-то там байта регистра я дают оповещение юзеру window.confirm(message). Юзер выбирает продолжить или завершить работу. Код на сервере такой:



Google
El
05.06.2018
03:42:11
а на клтенте такой:



сервер не ловит ответ клиента. Как решить проблему. Мне нужно именно в функции поймать ответ, чтобы resolve сделать

Cenator
05.06.2018
05:15:14
Чем тебе роутер то не угодил

Yaroslav
05.06.2018
05:16:01
Ты смотрел его код?

Cenator
05.06.2018
05:17:53
Yaroslav
05.06.2018
05:18:13
Там нет листенера

Поэтому так рекомендовал

Cenator
05.06.2018
05:18:37
Так const app тогда или server а не router

Yaroslav
05.06.2018
05:18:56
Долго описывать

)

Cenator
05.06.2018
05:19:51
А вообще он экспортирует роутер, так что хз, есть ли там листерен

Sheldhur
05.06.2018
05:26:42
есть несколько асинк функций вызываемых подряд и для каждый ваще насрать на возвращаемый результат, ставить перед каждой await или в Promise.all обернуть?

mr_makss
05.06.2018
05:32:29
Цель функций async/await упросить использование promises синхронно и воспроизвести некоторое действие над группой Promises. Точно так же как Promises подобны структурированным callback-ам, async/await подобна комбинации генераторов и promises.

Morsik
05.06.2018
05:33:17
Promise.all же обосрется на исключении и не выполнит все
промис алл принимает уже запущенные промисы, а запущенный промис отменить нельзя (только приложение уронив разве что)

Google
Morsik
05.06.2018
05:33:51
с другой стороны из-за исключения возможно не дождешься выполнения какого-либо из промисов

енот
05.06.2018
05:39:52
промис невозможно провернуть назад

Sheldhur
05.06.2018
05:40:24
Да ладно?

mr_makss
05.06.2018
05:40:26
Если все операции должны выполняться асинхронно, то нужно асинхронно ждать ответов от них и соотвественно дальше в зависимости от ответов делать какие-то действия Если задача требует связи определенных асинхронных функций, то вероятно следует объеденить их в цепочку async function dep_test() { return 0; } async function test() { return 1; } dep_test().then( k => { test.then(e => { ... }); } ); все

не забывать про отреджекченый т.к. бывает всякое

цепочку можно записать по другому

Sheldhur
05.06.2018
05:42:08
Facepalm.jpg

mr_makss
05.06.2018
05:43:12
с промисом можно делать все что угодно

arts
05.06.2018
05:46:58
mr_makss
05.06.2018
05:47:05
Не путайте await и Promise.all Функция add1 приостанавливается на 2 секунды для первого await и еще на 2 для второго. Второй таймер создается только после срабатывания первого. В функции add2 создаются оба и оба же переходят в состояние await. В результате функция add2 завершится скорее через две, чем через четыре секунды, поскольку таймеры работают одновременно. Однако запускаются они все же не паралелльно, а друг за другом - такая конструкция не означает автоматического использования Promise.all. Если два или более Promise должны разрешаться параллельно, следует использовать Promise.all.

подробнее про это тут хорошо написано https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Statements/async_function

Alex
05.06.2018
05:48:22
А я могу создать какой-нить ограниченный пул воркеров, чтобы не плодить асинхронное выполнение Что процессор под 100% забивается и крашится всё

mr_makss
05.06.2018
05:48:45
realy

но вы можете дополнить пример промисами в определенных строчках кода

Антон
05.06.2018
05:55:21
Для одновременного запуска можно запустить сначала без await. А потом подождать выполнение.

K
05.06.2018
06:00:06
Для одновременного запуска можно запустить сначала без await. А потом подождать выполнение.
Можно кидать и через Promise.all() и через await + await если значения на выхлопе не важны, так кажется. Что значит продолжать выполнение, поставить эвейт на промис? Или запихнуть в промис.олл?

Антон
05.06.2018
06:20:00
Можно кидать и через Promise.all() и через await + await если значения на выхлопе не важны, так кажется. Что значит продолжать выполнение, поставить эвейт на промис? Или запихнуть в промис.олл?
const one =promise1(); const two = promise2(); await one; await two; - запустит 1 и 2 одновременно, дождется обоих. В принципе аналог promise.all, только можно менеджить ошибки выборочно.

mr_makss
05.06.2018
06:27:14
ага и смерджить их в одну

Google
Grigoriy
05.06.2018
06:52:12
While items.length Ps.push new Promise items.shift Promise.all Ps then....

Эт все одновременно. Или await вместо пуша если последовательно

Alexander
05.06.2018
06:55:57
Или через reduce

Если нужно последовательно

Grigoriy
05.06.2018
06:56:30
Чтобы набивать по мере готовности понадобится два вайла. А как редюсом?

енот
05.06.2018
06:57:31
как удалить экземпляр класса?

Alexander
05.06.2018
06:58:37
Примерно так

arts
05.06.2018
07:02:13
pArr.reduce((acc, p) => acc.then(p))
Выполнятся они параллельно, просто редьюсом набьются в цепочку.

Alexander
05.06.2018
07:02:47
Ну да

arts
05.06.2018
07:02:52
Нужно их в функции обернуть и вызывать в then

Alexander
05.06.2018
07:03:01
Только вот all последовательность не гарантировал

вроде как

Cenator
05.06.2018
07:03:44
arts
05.06.2018
07:05:02
Alexander
05.06.2018
07:05:50
Редьюс тоже не гарантирует
Как не гарантирует? У нас массив пересортировывается?

arts
05.06.2018
07:06:37
pArr.reduce((acc, p) => acc.then(p))
В этом виде не гарантирует

Как не гарантирует? У нас массив пересортировывается?
Так и в promise.all не пересортировывается :-)

Cenator
05.06.2018
07:07:52
https://hackernoon.com/functional-javascript-resolving-promises-sequentially-7aac18c4431e

Alexander
05.06.2018
07:07:57
Так и в promise.all не пересортировывается :-)
Да, но в итоговый массив промисы залетают по мере готовности, а не по порядку

Google
Cenator
05.06.2018
07:08:10
в ноде можно for await of

Антон
05.06.2018
07:28:38
Порядок не важен же

Alexander
05.06.2018
07:30:43
ну если не важен, то в путь

some_random_anonymous
05.06.2018
08:32:22
https://github.com/upend/IF_MS_BUYS_GITHUB_IMMA_OUT

Casper
05.06.2018
08:32:44
https://github.com/upend/IF_MS_BUYS_GITHUB_IMMA_OUT
Ты это везде будешь постить?)

some_random_anonymous
05.06.2018
08:34:22
Ты это везде будешь постить?)
Нет. Только в двух конфах

Gats
05.06.2018
08:38:33
Подскажите, где на фронте я могу увидеть данные которые отправляются через res.send(data) ?

Grigorii
05.06.2018
08:39:19
res.render, res.json и т.д. тот же res.send по сути

Grigorii
05.06.2018
08:51:50
Хм, видимо, я не так понял вопрос?

Gats
05.06.2018
09:00:55
Хм, видимо, я не так понял вопрос?
тут я не верно его задал. в общем мне интересно, как можно передать json с серва на фронт, и где я его могу лицезреть на фронте

Grigorii
05.06.2018
09:03:23
тут я не верно его задал. в общем мне интересно, как можно передать json с серва на фронт, и где я его могу лицезреть на фронте
вообще, именно в такой постановке можно по вебсоккетам. Если просто надо передать json, то клиент делает запрос на сервер, сервер отвечает jsonом и клиент получает его в теле ответа

Но просто взять и послать с сервера на клиент без long polls или веб-соккетов по просто http нельзя

А ещё, если шлёшь json, то лучше res.json и использовать

Страница 2109 из 2748