Size: a a a

JavaScript — русскоговорящее сообщество

2021 January 30

ES

Egor Sigolaev in JavaScript — русскоговорящее сообщество
Иван
Из твоего скриншоте вообще ничего не понятно, увы. Что это, откуда это, почему — только вопросы
А что непонятно? Мейл с помощью либы puppeteer берет значение инпута и потом надо использовать дальше. Но проблема в том, что await вызывается асихронно и 52 строчка сразу после $eval
источник

ES

Egor Sigolaev in JavaScript — русскоговорящее сообщество
Vitalii D
pageMail.$eval возвращает промис?
да, переменная инициализируется, но поздно
источник

ES

Egor Sigolaev in JavaScript — русскоговорящее сообщество
если убрать await у pageMail.$eval, то кидает ошибку
источник

J

Jumpux in JavaScript — русскоговорящее сообщество
https://habr.com/ru/post/486820/
Наткнулся на статью
Советую почитать
источник

И

Иван in JavaScript — русскоговорящее сообщество
Egor Sigolaev
А что непонятно? Мейл с помощью либы puppeteer берет значение инпута и потом надо использовать дальше. Но проблема в том, что await вызывается асихронно и 52 строчка сразу после $eval
Если бы всё было так, как ты говоришь, всё работало бы корректно. И я не понимаю, что такое «раньше инициализации email»
источник

ES

Egor Sigolaev in JavaScript — русскоговорящее сообщество
Иван
Если бы всё было так, как ты говоришь, всё работало бы корректно. И я не понимаю, что такое «раньше инициализации email»
а что непонятного в слове инициализация? 52 строчка выполняется до того, как email была проинициализирована значением в лямбде
источник

AK

Andrey K in JavaScript — русскоговорящее сообщество
Egor Sigolaev
если убрать await у pageMail.$eval, то кидает ошибку
какую?
источник

ES

Egor Sigolaev in JavaScript — русскоговорящее сообщество
прикол нашел, не знаю с чем связано. Если написать такой код, то все окей. Как я понимаю, лог останавливает поток и ждет инита мейла
источник

И

Иван in JavaScript — русскоговорящее сообщество
Egor Sigolaev
а что непонятного в слове инициализация? 52 строчка выполняется до того, как email была проинициализирована значением в лямбде
Эта константа инициализируется в момент присваивания ей значения, возвращаемого из промиса. Она не может «не успеть» инициализироваться. Это происходит единожды.
источник

И

Иван in JavaScript — русскоговорящее сообщество
Egor Sigolaev
прикол нашел, не знаю с чем связано. Если написать такой код, то все окей. Как я понимаю, лог останавливает поток и ждет инита мейла
Неправильно понимаешь
источник

ES

Egor Sigolaev in JavaScript — русскоговорящее сообщество
Иван
Эта константа инициализируется в момент присваивания ей значения, возвращаемого из промиса. Она не может «не успеть» инициализироваться. Это происходит единожды.
я и имел это ввиду, из за асинхронности 52 выполняется сразу после промиса, вот как приостановить выполнения кода после промиса и продолжить после только? Всё в лямбде дальше писать?
источник

A

Alexcc in JavaScript — русскоговорящее сообщество
Egor Sigolaev
я и имел это ввиду, из за асинхронности 52 выполняется сразу после промиса, вот как приостановить выполнения кода после промиса и продолжить после только? Всё в лямбде дальше писать?
ну все правильно await ожидает выполнение промиса
источник

AK

Andrey K in JavaScript — русскоговорящее сообщество
Egor Sigolaev
я и имел это ввиду, из за асинхронности 52 выполняется сразу после промиса, вот как приостановить выполнения кода после промиса и продолжить после только? Всё в лямбде дальше писать?
смешались в кучу кони, люди...
источник

ES

Egor Sigolaev in JavaScript — русскоговорящее сообщество
мне бы синхронность добавить, правда не знаю возможно ли это
источник

ES

Egor Sigolaev in JavaScript — русскоговорящее сообщество
избавиться от лямбд можно вообще? У меня весь код такой на асинках
источник

И

Иван in JavaScript — русскоговорящее сообщество
Egor Sigolaev
Есть такой код, как я понял здесь все происходит асинхронно. Проблема в том, что 52 строка вызывается раньше, чем инициализация email, можно ли как то подождать инициализацию в джс?
На 52 строке нет обращения к email. Как ты определил, что к моменту её исполнения твой имейл «не успел» инициализироваться?
источник

AK

Andrey K in JavaScript — русскоговорящее сообщество
Иван
На 52 строке нет обращения к email. Как ты определил, что к моменту её исполнения твой имейл «не успел» инициализироваться?
да, он даже не читает, чо ему пишут )
источник

A

Alexcc in JavaScript — русскоговорящее сообщество
Egor Sigolaev
избавиться от лямбд можно вообще? У меня весь код такой на асинках
Я боюсь ты берешь неправильный подход где гарантия того что сервер не упадет или данные придут вовремя
источник

A

Alexcc in JavaScript — русскоговорящее сообщество
кейс меняется на лету при разный ситуациях
источник

ES

Egor Sigolaev in JavaScript — русскоговорящее сообщество
Иван
На 52 строке нет обращения к email. Как ты определил, что к моменту её исполнения твой имейл «не успел» инициализироваться?
оно идет дальше, без разницы. Проблема была в том, что колбек асихнронен, интересует возможность избавиться от нее
источник