CherryTea
а блин спасибо
Прежде чем я убью вечер на это, какие проблемы это должно решить?
Nikita
Ну это типо фп, монады и
Sergey
Прежде чем я убью вечер на это, какие проблемы это должно решить?
все проблемы промисов)) и нормальные методы для них
Sergey
не только .then, .catch но и .or, .and и т.д. конвертацию из node-callback и из промисов и обратно
Nikita
CherryTea
не только .then, .catch но и .or, .and и т.д. конвертацию из node-callback и из промисов и обратно
Конвертацию я и так ручками делаю, а or и and интересно. Если вдруг понадобится буду знать куда смотреть
Vitaly
Каких?
для композиции
Nikita
Ну меня вполне устраивает async/await
Vitaly
Вот кстати из интересного, но я пока глубоко не копал https://github.com/staltz/callbag-basics
Дима
Проблема на самом деле в том, что их сначала всё равно будешь юзать как промисы, в то время как их концепция радикально мощнее
Дима
Это следующий шаг после освоения стримов)
Sergey
Проблема на самом деле в том, что их сначала всё равно будешь юзать как промисы, в то время как их концепция радикально мощнее
я описываю в них почти всю логику ну точнее как вместо async/await и промисов также монадки
Sergey
хз как описать человеческим языком
Sergey
лол)
Sergey
.never чет не могу придумать кейс для него
Дима
Блокировка треда
Дима
Фактически это надёжно заблокированный поток, мне раньше довольно часто требовалось
Sergey
надо поэкспериментировать
Sergey
очень размыто представляю кейсы юзания залоченного потока
Дима
я описываю в них почти всю логику ну точнее как вместо async/await и промисов также монадки
Там вся фигня в том, что их можно использовать менее прямолинейно, но понимание этого у меня приходит лишь по мере продвижения с message passing
Zaur
Я таки научился писать на nodejs без классов. И мне это начинает нравится. ООП головного мозга - уходи.
Vitaly
опять таки можно эмулировать вечный таймаут, если использовать or
Дима
очень размыто представляю кейсы юзания залоченного потока
Например ресурсы которые можно использовать только один раз, возврат never в чейне будет гарантированно блокировать канал их предоставления
Дима
У меня это прям вечная трабла была, глобального масштаба — как предоставить самому себе гарантии того что эвент эмитится только один раз (ака резолв промиса) если емит эвента по определению бывает сколько угодно раз
Дима
Спойлер — приложения начинают выглядеть и работать совсем иначе)
Sergey
есть одна библиотека в планах попробую описать так
Tommy
ребят как подружить vue и express express юзает pug, webpackкомпилит без ошибок js я его подключаю к pug файлу но компоненты не отображаются и нет никаких ошибок
Vitaly
есть одна библиотека в планах попробую описать так
как идея: сделать аналог Micro на futures
Vitaly
https://github.com/zeit/micro
Sergey
А о
Vitaly
все переделка: encaseP
Vitaly
я б в нашей компании микросервисы переписал бы на футурки 😎
Дима
Проблема в том, что у промисов всегда тип Reject строго mixed, поэтому профит будет не полным без серьезной смены подходов)
Дима
Хотя да, наверное можно представить весь micro как один большой фьючерс, тогда есть смысл
Vitaly
Нусобсно да
Дима
async await кстати далеко не прьячьте, он по прежнему полезен в ряде случаев)
Vitaly
ну я покопаю вечерком, а то у нас релиз
Дима
Например захэндлив все ошибки отдельно, можно обеспечить себе await без try catch
Vitaly
pure stuff!
Anonymous
async function enteraddress(){ page.goto('google.com'); const keywordInput = page.$(`#antihype_field`); } emitter.on (`enteraddress`, enteraddress(address => keywordInput.value = address))
Anonymous
puppeteer кто-то пользовался?
Anonymous
в эмиттер.он не определяет переменную keyboard input
Anonymous
но это единственный способ работать с puppeteer
Anonymous
через эту константу
Vladyslav
Привет всем. Недавно начал учить ноду и при изучении fs застрял. подускажите почему метод .write запускается раньше метода .read и куда компать что бы понять как это исправить
Vladyslav
Serhii
Всем привет. Немного выпал из ноды) что нынче в моде на бекенде после featherjs ? для REST API
krn
fs readFileSync и прочие
Vladyslav
fs readFileSync и прочие
а если асинхронную юзать то никак?
krn
Или колбэк
krn
Или промис
Vladyslav
окей, спасибо пойду про промисы читать
Leet
окей, спасибо пойду про промисы читать
в твоем случае это не промисы
Leet
асинхронность?
Ну конечно, твой метод read запускается первым, а отрабатывает не факт что первым)
Vladyslav
Ну конечно, твой метод read запускается первым, а отрабатывает не факт что первым)
подскажи пожалуйста что бы такое прочитать или посмотреть что бы вехать немного в эту тему
Vitaliy
restify?
krn
подскажи пожалуйста что бы такое прочитать или посмотреть что бы вехать немного в эту тему
Базовое - колбэки. Асинхронные операции. Следом промисы. Асинк авейт
Leet
подскажи пожалуйста что бы такое прочитать или посмотреть что бы вехать немного в эту тему
Javascript Call stack погугли, когда поймешь как машина работает, на практике закрепляй, эксперементируй.
Виталий
Всем привет. Кто нибудь работал с Gitlab CI? Не могу запустить тесты. в .gitlab-ci.yml есть джоба test api: stage: test script: npm test Если в package.json указать просто "test": "mocha", то локально всё работает, но в раннере гитлаба найти моку не может. Если указать "test": "node_modules/.bin/mocha" - то мока запускается, но почему то неправильно резолвит рекваеры (не находит мои файлы), хотя локально опять же всё отрабатывает норм. Куда копать? ps - локально мока не установлена глобально, если что.
Vladyslav
спасибо
Leet
спасибо
https://developer.mozilla.org/ru/docs/Web/JavaScript/EventLoop
Vladyslav
Еще Event Loop , в общем все что связано с движком
ну в это я немного вкурил даже проблем никаких не возникало. Хотя возможно я просто на них ещё не набрел)
Leet
Ну смотри, на твоем примере видно, что твой метод read() запускается и сразу отрабатывает. Запускает метод fs.readFile внутрь которого передается функция-каллбек, которая будет запущена когда-нибудь, но не сразу т.е. асинхронно. Движок ее вызовит и исполнит чуть позже, за это время вполне может быстрее отработать fs.writeFile, но не обязательно.
Leet
Если тебе привычно программировать в "синхронной" манере, советую сразу изучить промисы и async await синтаксис.
Serhii
На рестифае писал, нравится