
dima
17.08.2017
12:12:15
вот они

Andrey ?
17.08.2017
12:12:17
Покажи код findOne
Асинхронный драйвер mysql внезапно стал там синхронным или что?

dima
17.08.2017
12:13:32

Google

Andrey ?
17.08.2017
12:13:41
Ну
А теперь смотри на async

dima
17.08.2017
12:13:46
вот из бд чистые данные

Andrey ?
17.08.2017
12:13:49
Что по-твоему он возвращает?)
async-функции возвращают промис

dima
17.08.2017
12:14:17
как проверить? Если был бы промис то в консоли увидели бы pending

Eugeniy
17.08.2017
12:14:21
const user = await Model.findOne({ … })

Andrey ?
17.08.2017
12:14:50
Ты в консоль-то посмотри
На свои же скрины

dima
17.08.2017
12:15:39
ну данные из бд. Все нормально. Что не так?

Andrey ?
17.08.2017
12:16:05
gospodee, не может у тебя из async вернуться не-промис

Lulz
17.08.2017
12:16:06

Google

Andrey ?
17.08.2017
12:16:49

dima
17.08.2017
12:16:50
асинк это then
это сахар

Andrey ?
17.08.2017
12:16:55
Вот у меня тут эвейт стоит

Lulz
17.08.2017
12:17:17
so?
resolve\reject, он вернул промис, но уже с результатом

Andrey ?
17.08.2017
12:17:39
А щас вообще древняя магия

dima
17.08.2017
12:17:50

Andrey ?
17.08.2017
12:18:09
Воткни долбанный then и проверь с ним
В deserialize

dima
17.08.2017
12:19:28

Sparrow
17.08.2017
12:20:09
успели отрезолвиться вот и пришли

Andrey ?
17.08.2017
12:20:33
Сдаюсь, иди читай как работает асинк и эвейт и почему нельзя так писать

dima
17.08.2017
12:21:26
ты как предлогаешь?

Andrey ?
17.08.2017
12:21:35
Нет
Я предлагаю воткнуть then в deserialize
У findById

Google

dima
17.08.2017
12:21:59
ну там тоже самое

Andrey ?
17.08.2017
12:22:06
Потому что findById тебе возвращает промис

dima
17.08.2017
12:22:17
минутку

Andrey ?
17.08.2017
12:22:19
Как бы тебе не хотелось верить в то, что все же не промис, но нет, там промис)

dima
17.08.2017
12:22:29
минутку

Andrey ?
17.08.2017
12:24:12
deserialize перепиши
Нормально

dima
17.08.2017
12:24:27
в консоли есть данные, но почему я не вижу сам промис выводя findOne() ?

Andrey ?
17.08.2017
12:24:57
Вот тут
user.then(done)

dima
17.08.2017
12:26:27
минутку
ща кто то пойдет читать о промисах
готов ? D

Andrey ?
17.08.2017
12:27:26
Я уже ко всему готов тут

dima
17.08.2017
12:28:04
так что мне возвращаются данные

Andrey ?
17.08.2017
12:28:41
А теперь покажи полностью код

dima
17.08.2017
12:28:47
чистые. Я же кидал скрины консоли 100 раз

Google

Andrey ?
17.08.2017
12:28:51
Пока я не умер со смеху

dima
17.08.2017
12:29:17
это и есть полность

Andrey ?
17.08.2017
12:29:36
Нет, потому что ты не можешь вызвать await за пределами async-функции
Вот только у тебя на твоем deserialize - нифига не async-функция
Еще раз говорю
А затем ртфм по async/await

dima
17.08.2017
12:30:55

Andrey ?
17.08.2017
12:31:27
Так чего приложение-то не работает? ?
Мне все же интересно, как по-твоему в user придут чистые данные
Если findOne - async-функция?
Походу, у тебя какой-то свой javascript
https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Statements/async_function

dima
17.08.2017
12:32:35
я проорал. Да там промис

Andrey ?
17.08.2017
12:32:40
Я уже даже не знаю, куда тебя еще носом ткнуть

dima
17.08.2017
12:33:09

Andrey ?
17.08.2017
12:33:39
Как перестать орать

dima
17.08.2017
12:34:07

Andrey ?
17.08.2017
12:34:24
Потому что сейчас ты юзаешь async
А до этого ты его не юзал

Google

dima
17.08.2017
12:34:49

Andrey ?
17.08.2017
12:34:59
Не факт, что deserializeUser будет вообще работать с промисом
Даже более того: не будет, не просто же так коллбек передает
Убери async и await тут и сделай через then

dima
17.08.2017
12:38:25
почему через then ? Это же тоже самое

Andrey ?
17.08.2017
12:38:49
Не тоже самое

Ruslan ?
17.08.2017
12:39:21
Ты передаёшь промис в deserializeUser... Он принимает промисы? Вряд ли
User.findOne({...}).then(user => {
console.log(user);
done(null, user);
})

dima
17.08.2017
12:40:17
а ну да. Че я туплю. Он же не потдерживает async
а как так пишите? Как код так написали?

Andrey ?
17.08.2017
12:41:38

dima
17.08.2017
12:42:05

Ruslan ?
17.08.2017
12:42:06
Оберни в ```