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
Оберни в ```