@nodejs_ru

Страница 2672 из 2748
DimenSi
11.10.2018
20:25:21
Roma
11.10.2018
20:25:32
Есть такие, кто работал с multer? там когда настраиваешь distination, он в параметрах принимает req, но почему-то у меня посточнно req.body пустой

Дмитрий
11.10.2018
20:26:00
А в чем нестабильность?
Четыре стрима: A, B, C, D A → B A → C B → D C → D Результат — у D будет два разнесённых во времени события вместо одного

Google
DimenSi
11.10.2018
20:26:22
Body parser?
body parser не парсит форм даты

Roma
11.10.2018
20:26:35
const storage = multer.diskStorage({ destination: function(req, file, cb) { console.log('REQUEST', req); cb(null, __dirname + "/public/" + req.body.path); }, filename: function(req, file, cb) { cb(null, file.originalname); } });

Roma
11.10.2018
20:27:02
мне надо динамически создавать папки для хранения и я в запросе получаю путь для новой папки

Roma
11.10.2018
20:27:20
но всегда req.body пустой

Дмитрий
11.10.2018
20:27:35
Ну ты же можешь сделать share
Каждый раз? А если человеческий фактор, а если большой ™️ проект?

Alex
11.10.2018
20:27:40
Aga
11.10.2018
20:27:46
У меня на данный момент 1, хз будут ли еще

Дмитрий
11.10.2018
20:27:58
Ну это вообще ни о чем)

Google
Nikolay
11.10.2018
20:28:06
Дмитрий
11.10.2018
20:28:13
Вообще то да

Это проблема именно стримов, они сломаны by design

DimenSi
11.10.2018
20:28:48
В смысле
если делать реализацию промиссов на таймерах

Andrew
11.10.2018
20:28:57
Каждый раз? А если человеческий фактор, а если большой ™️ проект?
Ну это уже как бы все от людей зависит. Но да кривая вхождения и понимания например у RxJs так себе

Nikolay
11.10.2018
20:29:41
Дмитрий
11.10.2018
20:29:47
Стримы — это просто необходимое но не достаточное условие, если голые стримы ничего не уравновешивает, то в рутину войдут бесконечные циклы

"Сломаны" означает not work as intended
Именно это я и сказал

Andrew
11.10.2018
20:31:01
Вообще-то это ж просто другое представление колбэков

Nikolay
11.10.2018
20:32:10
Вообще-то это ж просто другое представление колбэков
Это абстракция, Дима и говорит, что она дырявая.

DimenSi
11.10.2018
20:34:01
Почему?
У всех браузеров перед выполнением таймера задержка в 4мс . Нужно использовать другое решение, чтоб создать асинхронность

sk
11.10.2018
20:34:16
созрел вопрос, почему говорится что коа и сэйлс мощнее чем экспресс

Alexander
11.10.2018
20:34:29
Опять

sk
11.10.2018
20:34:48
?

Дмитрий
11.10.2018
20:35:03
Платиновые треды

DimenSi
11.10.2018
20:35:37
упс, прочитал, быстрей, а не мощней

Дмитрий
11.10.2018
20:35:38
А express на connect, а connect на http

Google
DimenSi
11.10.2018
20:38:55
А, я думал это чат про ноду
в ноде тоже есть задержка

Alex
11.10.2018
20:40:17
в ноде тоже есть задержка
По мне так это было бы неплохо, цепочка then'ов не блокировала бы эвент луп

Alexander
11.10.2018
20:41:22
DimenSi
11.10.2018
20:41:27
Alex
11.10.2018
20:44:04
А ты про микротаски в итоге прочитал?
В итоге прочитал, правда не помню, что именно. Статья на Хабре для меня была немного бесполезной, потому что меня только нода интересует

https://repl.it/repls/SturdySpatialFormat вот пример из кантора
Как-то с телефона не осилить Что там?

Alexander
11.10.2018
20:45:49
DimenSi
11.10.2018
20:45:58
типо что быстрей выполнит 100 функций, таймер или immediate

Alex
11.10.2018
20:46:48
типо что быстрей выполнит 100 функций, таймер или immediate
А мне не надо быстрее, например. А надо чтобы event loop не блочился

Дмитрий
11.10.2018
20:47:43
ric / raf

requestAnimationFrame / requestIdleCallback

DimenSi
11.10.2018
20:48:53
requestAnimationFrame / requestIdleCallback
а это вообще в ноде есть?

Дмитрий
11.10.2018
20:49:39
Нет, но это удобная абстракция, так что можно библиотеки или полифиллы заюзать

Сергей
11.10.2018
20:54:48
В смысле?
диспатчнул событие в компоненте A куда дальше смотреть? его может хэндлить любая сага в проекте, и так просто это не узнать при этом пара саг может продолжить работать, а пара других остановиться и это всё максимально неявно. пока не прочитаешь весь код проекта несколько раз об этом не узнаешь а если проект большой, то это всё не запомнишь и будешь долго резолвить причину багованного поведения

Vitaliy
11.10.2018
20:56:32
Здраствуйте есть одна проблема с промисами, уже очень сильно заебался поэтому прошу мне помочь : Есть функция : const reqObj = (url, callback) => { return new Promise((resolve, reject) => { request(url, function(err, res, body) { if (!err) { resolve( res ); } else { reject(err); } }); }); }; module.exports = reqObj; Вот ее вызов в другом файле: function custom (opts) { if (!opts || !opts.id) { throw err ('Please Write an id') } const url // url const callback // - здесь функция callbacka удалил чтобы место не забирать } request(url, callback) .then(res => res) } module.exports = custom; потом функция custom вызывается в express.js const express = require('express'); const ig = require('../app/index.js'); router.get('/store/:id', async (req, res) => { var template = { id: req.params.id }; igScrap.customStories(template) .then(res => console.log(res) }); что дает ошибку (node:2172) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'then' of undefined Я понимаю что может я тупой и все делаю не так, и вообще по жизни лох. НО КТО МОЖЕТ ПРОШУ ПОГОМИТЕ И ОБЬЯСНИТЕ !

Сергей
11.10.2018
20:56:40
А, это да. Но это в какой-то степени и плюс, что можно найти любой action
сколько я видел проектов, во всех это было критичным минусом за год разработки в команде (приход/уход разработчиков) проект становился всё сложнее и сложнее на каждую фичу, которая касалась саг уходит всё больше и больше времени и так было до тех пор, пока я не переписал на санки

Google
Aga
11.10.2018
20:58:47
signin_someaction

Сергей
11.10.2018
20:59:18
Почему же?)
ну эм. компонент диспатчит экшен И что же, мы в экшен будем писать какая сага его должна вызвать?

Vitaliy
11.10.2018
20:59:32
Ну либо request либо igScrap.customStiries являются undefined
ну когда в custom пишу then(res=> console.log(res)) выдает результат, но когда возвращаешь промис вот тогда ошибка

Aga
11.10.2018
20:59:44
Ты экспортируешь название экшна из actions, верно?

Сергей
11.10.2018
21:00:07
Так смотри
слушай. Я на саги потратил много своего времени. И саги не решают никакой проблемы

кажется, что они помогают решить повторяющиеся запросы

Aga
11.10.2018
21:00:33
С сокетами вроде норм зашло

Alexander
11.10.2018
21:00:39
Aga
11.10.2018
21:00:54
А есть достойная альтернатива?

Сергей
11.10.2018
21:00:56
С сокетами вроде норм зашло
вот тут хз даже не представляю, чем может помочь

Дмитрий
11.10.2018
21:01:03
const signedIn = createEvent() signedIn.watch(e => console.log('trigger'))

Vitaliy
11.10.2018
21:01:11
Сергей
11.10.2018
21:01:16
Дмитрий
11.10.2018
21:01:22
const signedIn = createEvent() signedIn.watch(e => console.log('trigger'))
А все вхождения видим через find reference

Google
Aga
11.10.2018
21:01:36
effector/thunk/execue
Хмм, в след раз их заюзаю, спасибо)

Сергей
11.10.2018
21:01:55
Хмм, в след раз их заюзаю, спасибо)
а если нравятся yield можно сделать аналог execue, только на генераторах

Хмм, в след раз их заюзаю, спасибо)
и посмотри на effector пример выше от Без консервантов о нем

Сергей
11.10.2018
21:03:20
Да, yield это красиво)
ну вот это субъективно. не хочу спорить. мне не очень нравится

Дмитрий
11.10.2018
21:03:50
Мне нравятся, пока их не используют как ad hoc async await

Aga
11.10.2018
21:04:01
ну вот это субъективно. не хочу спорить. мне не очень нравится
Да мне если честно без разницы, что async/await, что yield)

Дмитрий
11.10.2018
21:04:17
Главное грести в ритм

Alexander
11.10.2018
21:04:25
это импорт идет const request = require('./first.js');
return request(url, callback)? У тебя custom ничего не возвращает

Сергей
11.10.2018
21:04:26
Да мне если честно без разницы, что async/await, что yield)
лучше юзать синтаксические конструкции по назначению

Vitaliy
11.10.2018
21:06:04
return request(url, callback)? У тебя custom ничего не возвращает
в кастоме прописаны параметры к reqObj функции и она там вызывается и по идеи должна возращать промис request(url, callback) .then(res => res) вот так, а потом я уже должен работать с ним в express.js

Vitaliy
11.10.2018
21:08:57
Alexander
11.10.2018
21:09:03
И у тебя в reqObj нигде коллбек не представлен. Промисы как бы для того и созданы, чтобы избавиться в подобного рода функциях от коллбеков

Alexander
11.10.2018
21:10:43
ща попробую секунду
и весь коллбек тебе надо перенести внутрь then после request(url, callback)

Vitaliy
11.10.2018
21:12:02
и весь коллбек тебе надо перенести внутрь then после request(url, callback)
Да работает, СПАСИБО ОГРОМНОЕ !! А мне в другом чате говорили мол express не принимает промисов и т.д

Alexander
11.10.2018
21:12:34
Ну так и есть. Но это не значит, что внутри экспресса нельзя работать с промисами

Andrew
11.10.2018
21:12:36
приди и плюнь им в лицо

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