Ilya
Время. Заново тестить. Дорого
Sergey
что лучше
Sergey
ааа
Sergey
вообще тесты для этого есть
Sergey
а так можешь новичку дать эту задачу
Ilya
Промизы диктуют вытягивание алгоритмов в последовательную цепочку.
Sergey
как раз опыт
Ilya
Можно все сломать к хуям переводя на авайт
Ilya
У меня этого дня работы нет
Sergey
Можно все сломать к хуям переводя на авайт
хз как можно всё сломать если переводить по одной функции особенно если есть тесты - переписал - запустил тесты - поправил - проверил - коммит
Anonymous
Можно все сломать к хуям переводя на авайт
а вообще должно быть только синхронно или только асинхронно? или мешать это всё в кучу тоже есть практика такая?
Sergey
и так, по функции по функции по чуть чуть можно перефигачить постепенно
Ilya
вообще тесты для этого есть
В случае когда ты делаешь импорт данных со стороннего сервиса - тестить ты будешь сам. Руками
Sergey
если нужно оттестить свой код то сделать можно всё что нужно
Anonymous
а что конкретно?
дофига чего. в общем-то в ишусах самой ноды есть конкретные примеры. тысячи их
Ilya
Ну да. Когда разрабов полсотни и бюджет не ограничен
Sergey
8.1 нода ацтой
интересно когда пофиксят вроде зарелизили
Ilya
И срок запуска
Anonymous
там пайплайна 2 и из-за этого бывает всякий пиздец
Anonymous
интересно когда пофиксят вроде зарелизили
в 5.9 обещают совсем выкинуть кранкшафт и обещают, что будет ок
Anonymous
5.9 в мастере уже
Anonymous
но не в 8.x ветке еще
Sergey
значит надо подождать
Sergey
мб в 8.3-4 завезут хотя сомнения меня берут
Anonymous
вот такие вот спагетти: https://pastebin.com/RbyVH6ub мдя....
Anonymous
сейчас бы var везде писать
всмысле? сарказм?)
Nikolay
сейчас бы var везде писать
т.е до var доебался, а до function нет?
Sergey
ахах)))
Sergey
просто var прям рвет глаза
Sergey
д а там всё глаза рвет
Sergey
бля пиздец
Sergey
сначала берет ru потом en
Sergey
хули не сразу
Sergey
Promise.all все дела
Anonymous
ну я ж говорю, только начал, не пинайте сильно(((
Sergey
просто это говнокод))
Sergey
там можно сделать всё крайне просто
Sergey
Promise.all(getTrans('lang_sel'), getTrans('en'), getTrans('ru')) .then(([text, ru, en]) => { // do })
Sergey
всё
Nikolay
тем что есть arrow function
Oleg 🍺
А вижу
Oleg 🍺
Ну function иногда нужен
Oleg 🍺
Чтобы сохранить контекст вызова, например в сокетах
Nikolay
нужен ))
Oleg 🍺
Да, в том коде он выглядит не нужным)
Anonymous
UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 2): TypeError: (var)[Symbol.iterator] is not a function и не понятно где, теперь(
Sergey
Чтобы сохранить контекст вызова, например в сокетах
иногда нужен но если есть возможность проектировать код без констекта функции лучше так и сделать пример тому koa2 кидает ctx как параметр функции
Oleg 🍺
вот так: socket.on('test', data => myFunc(data, this)) ?
Oleg 🍺
Некрасиво, и каждый раз делать обёртку фу фу фу)
Sergey
каждый раз?
Oleg 🍺
Ну допустим у тебя несколько методов, аля socket.on('data1', data => myFunc1(data, this)); socket.on('data2', data => myFunc2(data, this)); socket.on('data3', data => myFunc3(data, this));
Oleg 🍺
Куда более красиво смотрится: socket.on('data1', myFunc1); socket.on('data2', myFunc2); socket.on('data3', myFunc3);
Sergey
я чаще всего делаю кастомные обертки над объектами)))
Oleg 🍺
А ты хитёр
Sergey
для многих целей) ошибки хендлить, писать красивый и безопасный код
Anonymous
так а что с var'ами?
Anonymous
опять контексты?
Anonymous
лучше let?
👨🏼‍💻
лучше let?
let / const
Sergey
лучше let?
лучше const let только в крайней необходимости
Anonymous
а var когда? или его вообще нафиг?
Sergey
вот интересно звучит - безопасный код.
да, по факту наебалово))) но так, всё заворачивается в свои обработчики
Sergey
а var когда? или его вообще нафиг?
да, var вообще не нужен более
CherryTea
да, var вообще не нужен более
вар производительней
Sergey
вар производительней
не удивительно но это не то где стоит экономить
CherryTea
CherryTea
легко