Suicide Liza
да но then не выведит return
Suicide Liza
это моя проблема
Suicide Liza
уже говорили об этом если в будуйшем захочю чтото еше будет hell of then а синк у меня чето не хочет работать
Дима
да но then не выведит return
Что значит не выведет?
Suicide Liza
function test(){ return DB.select('test') .then(function(rows){ if(rows.length) return rows }) }
Suicide Liza
функция test не выведит
Suicide Liza
rows
Suicide Liza
я уже 2 дня стараюсь сделать это
Suicide Liza
function test(){ return DB::where('helpme','=',0) ->first() }
Suicide Liza
(php)
Дима
А по моему выведет
Suicide Liza
nien
Suicide Liza
promise выведит
Suicide Liza
без асинка
Дима
Ну значит не судьба, забей
Suicide Liza
:/
Suicide Liza
мне просто нужно function getIndex(req,res){ res.render('test',{data:test()}) } function test(){ return DB.select('test') .then(function(rows){ if(rows.length) return rows }) } вот что
Suicide Liza
промис мне тут как то не сайдет
Suicide Liza
тут было бы класно
Suicide Liza
async await
Suicide Liza
но у меня чето он не хочет работать
Suicide Liza
Suicide Liza
:/
Darya
с ноды 7.0.0
Darya
вроде бы
Sergey
Maxim
async function test(){ const rows = await DB.select(..) return rows } Но значение из test ты получишь только с await'ом и внутри асинхронной функции
Suicide Liza
я имеею ввиду чтото такое хочю просто ресалт оф query
Maxim
Так что всё это один хуй велосипед
Maxim
Используй промисы
Sergey
Sergey
я имеею ввиду чтото такое хочю просто ресалт оф query
если ты используешь промисы, то ты не можешь вернуть из асинхронной функции синхронный результат
Suicide Liza
я только сейчас изучаю js+ nodejs
Darya
просто надо почитать, что такое синхронное выполнение, асинхронное и параллельное
Suicide Liza
и стараюсь на практике
Sergey
ещё один человек говорит то же самое
Sergey
нужно блин изучить концепцию, прежде чем лезть
Darya
и желательно без привязки к языку вообще
Sergey
да тут в жс есть много аспектов специфичных
Sergey
в шарпах async по другому работает
Sergey
в расте futures тоже не так как промисы
Darya
ну концепция все же общая в какой-то мере)
Suicide Liza
НАКОНЕЦ ПОНЯЛ
λ
Эх жаль, жены нету, она в теме как в C# async/await работает
Konstantin
как и везде
Sergey
А в чем разница?
шарп по другому совершенно работает
Sergey
А в чем разница?
асинки там как обертка над классами (насколько я помню)
Darya
там System.Threading.Task и continuations
λ
Так и тут обертки
Sergey
Так и тут обертки
не обертки а сахар
λ
Сахар над промисами?
λ
async function foo() {} - обертка же
Sergey
Sergey
async function foo() {} === function foo(){ return Promise.resolve() }
Андрей
async function foo() {} - обертка же
Это значит, что функция возвращает промис.
λ
Ну я плохо знаю еще. Недавно свое переписывал с async/await и код стал куда лучше %)
Андрей
λ
async/await. Точно не знаю как оно даже внутри, но в итоге все работало и стало выглядеть куда лучше.
Sergey
async/await. Точно не знаю как оно даже внутри, но в итоге все работало и стало выглядеть куда лучше.
лол на цепочках промисов без async/await стало выглядеть лучше... это должно появиться в Охуительных историях ибо это пи-здец
λ
Кто сказал промисов?
λ
Я такого не писал :P
Sergey
Я такого не писал :P
хммм.. а на чем тогда?
Андрей
хммм.. а на чем тогда?
Ого, офишенная логика)
Sergey
Кто сказал промисов?
если без промисов и асинков как ты описывал асинхронные операции?
λ
У меня промисов не было, оно само оборачивало.
λ
async function isAuth() {} if (await isAuth()) { } else {
Sergey
async function isAuth() {} if (await isAuth()) { } else {
ты говоришь, что переписал всё без асинков
Sergey
ты переписывал недавно с асинков, на что?
Андрей
На эвэйты)