
? ethorz
14.06.2017
14:43:19
нужно вызвать api.validateEmail({email: s_.email}) сначала

Pasha
14.06.2017
14:43:41
return Promise.reject для второго промиса в случае ошибки и просто return value для success

Alex
14.06.2017
14:45:15
у промисов вроде нет метода end()
это какая то не-стандартная реализация?

Google

Pasha
14.06.2017
14:46:23
У api.end наверняка есть стандартный .then сразу, но если нужно прям res, err, то
return new Promise((fulfill, reject) => {
api...end((err, res) => {
if (err) {
return reject(err, res)
}
fulfill(res)
}
}
api.end это наверное superagent

? ethorz
14.06.2017
14:47:41
да
мне просто нужно от первого вызова апи вызывать второй
в зависимости от того, что приходит
и не понимаю как два апи в цепочку сделать

Pasha
14.06.2017
14:48:10
ну вот я тебе пример написал

? ethorz
14.06.2017
14:48:15
*два запроса

Pasha
14.06.2017
14:48:16
обработай err, res
при fulfill сработает первый аргумент .then

? ethorz
14.06.2017
14:48:30
ну end можно не использовать

Pasha
14.06.2017
14:48:32
при reject второй
.then(() => {
// everything ok
}, () => {
// when err
// do smth
return Promise.reject()
})
.then(() => {}, () => {
// smth else when error
})

Google

Сергей
14.06.2017
14:49:39
.catch

Pasha
14.06.2017
14:50:00
catch да, но не всегда удобно
что если у тебя в цепочке 3 запроса друг за другом

Максим
14.06.2017
14:50:58
Ребят, а поделитесь, пожалуйста, ссылками на группы/каналы в Телеграме,где предлагают работу?

? ethorz
14.06.2017
14:50:58
нихера не понятно)

Pasha
14.06.2017
14:51:01
и ты в зависимости от результата неважно положительного или нет хочешь дальше обработать и еще дальше выполнять цепочку
? ethorz почитай про промисы лучше тогда) сразу все станет ясно, ща
https://learn.javascript.ru/promise

Alex
14.06.2017
14:53:28
у них там все в end() сваливается

Pasha
14.06.2017
14:54:32
https://visionmedia.github.io/superagent/#promise-and-generator-support

Alex
14.06.2017
14:55:59
api.signup({email: s_.email, password: s_.password}).then(result => {}, error => {})
значит так
без всяких end()

Konstantin
14.06.2017
14:56:25
и не парься\
или async/await

Alex
14.06.2017
14:56:47
) это не мне

Konstantin
14.06.2017
14:56:51
и оборачивай тоже в try/catch

Google

Konstantin
14.06.2017
14:57:01
не люблю я вот эти выховы через запятую
нихуя ж не понятно :)

Pasha
14.06.2017
14:57:54
что там может быть непонятного?)

Alex
14.06.2017
14:58:00
согласен, catch можно ловить в конце, но не всегда ясно из какого then и что он вернул )

Konstantin
14.06.2017
14:58:11

Alex
14.06.2017
14:58:13
но да, такая возможность упрощает жизнь

Pasha
14.06.2017
14:58:19
:D

Semen
14.06.2017
15:12:41
была статья про борьбу с большими портянками import’ов (вроде на хабре) - кто помнит, киньте пожалуйста ссылочку. Там еще автор создавал файлы аля module.imports.js и module.exports.js

Andrey
14.06.2017
15:13:15

Eugeniy
14.06.2017
15:22:02
она вроде?

Semen
14.06.2017
15:22:51

Pasha
14.06.2017
15:22:52
от обилия ./ и ../ даже чет читать не хочется)
какая-то жуть

Semen
14.06.2017
15:23:20

Pasha
14.06.2017
15:23:29
какие нафиг алиасы?)

Eugeniy
14.06.2017
15:23:32

Pasha
14.06.2017
15:23:48
для ноды это app-module-path
и вебпак резолвит пути

Google

Pasha
14.06.2017
15:24:23
resolve.modules

Сергей
14.06.2017
15:28:09
root же

Konstantin
14.06.2017
15:31:08
Супер агент с блюбердом лучше сразу юзануть

Сергей
14.06.2017
15:32:05
суперагент
какой смысл
есть fetch, axios
нафига советовать bluebird
пусть стандартные штуки изучит

Stepan
14.06.2017
15:33:19

Admin
ERROR: S client not available

Name
14.06.2017
15:33:33

Сергей
14.06.2017
15:33:45
а кто пользуется lodash?
если чувак потом не сможет писать код без блуберда, гуд разве?

andretshurotshka?❄️кде
14.06.2017
15:36:18

Name
14.06.2017
15:36:57
если чувак потом не сможет писать код без блуберда, гуд разве?
не гуд, но не все же библиотеки должны быть расчитаны для тех людей, которые не знают, что делают
если получается, что из проекта в проект перетекают дополнительные утилиты для работы с fetch или промисами, то почему бы не использовать то, что работает сразу?

Сергей
14.06.2017
15:37:23
дополнительные утилиты для fetch и промисов?
это какие?
блуберд и суперагент?
так и получается в итоге

Pasha
14.06.2017
15:41:34
лодаш нужен

Google

Pasha
14.06.2017
15:41:52
как минимум потому что придется писать свои хелперы тогда) и прийдешь к своей либе..

Name
14.06.2017
15:41:52
дополнительные утилиты для fetch и промисов?
для промисов: finally, последовательный вызов, таймаут
для fetch: заголовки для отправки JSON, обработка ошибочных кодов, сериализация query параметров, обработка пустых запросов, и другие детали
никто не заявляет, что это нельзя обернуть и на нативных API, но если разработчик использует хотя бы 10% API вспомогательной библиотеки, то не вижу причин не воспользоваться

Сергей
14.06.2017
15:42:30

Default
14.06.2017
15:43:01

Alex
14.06.2017
15:43:02

Konstantin
14.06.2017
15:43:06

Сергей
14.06.2017
15:43:18

Alex
14.06.2017
15:43:24
но это обычно меньше, чем superagent

Pasha
14.06.2017
15:43:27
а через месяц другой также и про рамду будут говорить)

Default
14.06.2017
15:44:16

Pasha
14.06.2017
15:44:40
над фетчем все равно делаешь свои же врапперы
всегда

Сергей
14.06.2017
15:45:08
и в микроутилиту для .reduce принес весь лодаш
заебись!
давай так делать каждый день
может ещё jquery притащим для селекторов

Default
14.06.2017
15:45:44

Сергей
14.06.2017
15:46:02
крайне важная крайность

Default
14.06.2017
15:46:15
Знать, чо умеет язык, на котором ты пишешь все ж-таки необходимо

Pasha
14.06.2017
15:46:26
ок, нахера мы тогда бабель юзаем?) прийдет время и из лодеша все перекачует в нейтив

Alex
14.06.2017
15:46:31