@react_js

Страница 1744 из 5115
Сергей
18.07.2017
14:51:17
написал всё что нужно схэндлил в одном месте

Mike
18.07.2017
14:51:21
try { new Error() } catch(e) { try { new Error() } catch(e) { // продолжать? :) } }
try { new ServerError() new StupidError() } catch(e) { if(error instanceof ServerError){ ... } ... }

Сергей
18.07.2017
14:51:28
я многие проверки завернул в функцию handleErrors и вообще catch иногда в 3 строки

Google
Дмитрий
18.07.2017
14:52:47
Есть пример?
https://tech.evojam.com/2016/03/21/practical-intro-to-monads-in-javascript-either/ С замечанием к примерам кода, что обычно достаточно then( Right, Left )

Алексей
18.07.2017
14:52:51
try { new ServerError() new StupidError() } catch(e) { if(error instanceof ServerError){ ... } ... }
ок, поменял для наглядности ` try { fetch(‘serverA’) } catch(e) { try { fetch(‘backupServer’) } catch(e) { // failed totally. give up } } ~``

Алексей
18.07.2017
14:53:21
говно подход
ваще не спорю. Лесницу видишь?

Сергей
18.07.2017
14:53:27
писать так не надо

где лестница? у меня 3 запроса выполняется в try



Алексей
18.07.2017
14:54:58
где лестница? у меня 3 запроса выполняется в try
Смотри у тебя все 3 последовально, а нужно сначало 1 а уже если первый зафейлился то только тогда второй

Сергей
18.07.2017
14:55:05
а ничего что если 1 зафейлился то исполнение сразу провалится в catch?

а бля

я осознал

бля

Google
Сергей
18.07.2017
14:55:35
пиздец)

Алексей
18.07.2017
14:55:37
а ничего что если 1 зафейлился то исполнение сразу провалится в catch?
вот в это и суть, второй запрос делать только если первый зафейлился

во

Default
18.07.2017
14:55:45
ПРОСВЕТЛЕНИЕ

Alexandr
18.07.2017
14:55:46
Асинки во фронте спокойно модно использовать? Говорили, мол Бабель из в генераторы транспайлит, и работают они не особо быстро

Сергей
18.07.2017
14:55:49
в промисах то же самое будет

Асинки во фронте спокойно модно использовать? Говорили, мол Бабель из в генераторы транспайлит, и работают они не особо быстро
ты делаешь 10000К промисов в секунду? какая разница если ты все равно ждешь ответа от сервера

Mike
18.07.2017
14:56:21
на размере бандла сказывается

бабель из них такую простыню делает что пиздец

Mike
18.07.2017
14:57:26
ну он там огромный

строк 70

на все состояния промисов

Алексей
18.07.2017
14:57:46
в промисах то же самое будет
fetch('serverA').catch( fetch('backupServer') );

Max
18.07.2017
14:58:09
я вот слышу “огромный на 70 строк"

Mike
18.07.2017
14:58:17
fetch('serverA').catch( fetch('backupServer') );
ты фетчишь свой бэк, а на бэке уже думаешь, че выбирать, желательно вообще все за лоадбаллансером держать

Сергей
18.07.2017
14:58:23
fetch('serverA').catch( fetch('backupServer') );
если ты будешь писать такое в каждом санке, то у фронтенда к тебе вопросы Ты по идее напишешь это один раз в функции request() и забудешь

Max
18.07.2017
14:58:24
а по факту на сколько увеличится время загрузки у клиента?

Google
Max
18.07.2017
14:58:31
на нихуя

а код становится чище

Mike
18.07.2017
14:58:43
я вот слышу “огромный на 70 строк"
не, я понимаю. просто это каждый, так что если их много, бандл раза в три-четыре раздувается

Алексей
18.07.2017
14:58:49
Max
18.07.2017
14:58:49
ээээ

у меня бандл 1 мегабайт

Сергей
18.07.2017
14:59:12
у меня бандл 1 мегабайт
у меня 700КБ (это с SC) по коду везде async/await код легко пишется и читается

Max
18.07.2017
14:59:22
ну выпилить если половину говна и оптимизировать

будет 700кб

до гзипа

andretshurotshka?❄️кде
18.07.2017
14:59:43
fetch('serverA').catch( fetch('backupServer') );
Так никто не мешает юзать async await с catch

Mike
18.07.2017
14:59:49
я ж не сказал что это причина не использовать

Mike
18.07.2017
14:59:52
я сказал на что влияет

Max
18.07.2017
15:00:04
да это похуй

Алексей
18.07.2017
15:00:10
Так никто не мешает юзать async await с catch
И как вот мой пример выше написать с catch?

Max
18.07.2017
15:00:14
это как “если пойдешь в магазин тебя собьет машина"

фактически может

но по факту шансы настолько минимальные что похуй

и можно не упоминать чтобы не ебать голову

Mike
18.07.2017
15:00:53
И как вот мой пример выше написать с catch?
try { await fetch('serverA') } catch() { await fetch('backupServer') }

Google
Mike
18.07.2017
15:01:03
один-в-один твой пример

Max
18.07.2017
15:01:40
я бы в сервис обернул :)

бебебе

Алексей
18.07.2017
15:01:52
try { await fetch('serverA') } catch() { await fetch('backupServer') }
а что вернется то? c async, await результат тожить нужно и возвращать

Mike
18.07.2017
15:02:05
ты не возвращал

я написал РОВНО твой пример

Max
18.07.2017
15:02:16
а тут что вернется? fetch('serverA').catch( fetch('backupServer') );

andretshurotshka?❄️кде
18.07.2017
15:02:16
Admin
ERROR: S client not available

Алексей
18.07.2017
15:02:17
fetch('serverA').catch( fetch('backupServer') ).then((e) => { console.log(e); })

andretshurotshka?❄️кде
18.07.2017
15:02:19
?

Алексей
18.07.2017
15:02:35
await fetch('/s1').catch(fetch('/s2'))
хитро :) но это комбинация двух

Mike
18.07.2017
15:03:10
fetch('serverA').catch( fetch('backupServer') ).then((e) => { console.log(e); })
let a try { a = await fetch('serverA') } catch () { a = await fetch('backupServer') } console.log(a)

Vadim
18.07.2017
15:03:22
мож у кого завалялся конфиг реакта с вебпаком 3им?

Алексей
18.07.2017
15:04:52
в TypeScript решиме сработало :D let a; try { a = await fetch("serverA"); } catch (e) { a = await fetch("backupServer"); } console.log(a); fetch("serverA").catch(fetch("backupServer")).then(e => { console.log(e); });

Mike
18.07.2017
15:06:26
точки с запятыми >_<

Max
18.07.2017
15:06:31
:)

andretshurotshka?❄️кде
18.07.2017
15:07:53
let a = await fetch('serverA').catch(fetch('serverB')) console.log(a)

Еще короче

Google
Max
18.07.2017
15:08:07
хуй

andretshurotshka?❄️кде
18.07.2017
15:08:16
йух

Max
18.07.2017
15:08:22
второй фетч будет асинхронным

andretshurotshka?❄️кде
18.07.2017
15:08:30
Всм?

Max
18.07.2017
15:08:35
хотя могу ошибаться

ну у тебя await fetch('serverA')

а если там фейл то fetch('serverB') выполнится асинхронно и в a результата не будет

кмк

Mike
18.07.2017
15:09:23
у вас мислидингли catch написан

.catch(() => fetch('backupServer')

Алексей
18.07.2017
15:09:50
Не это работает но просто схитрил и зачейнил промисами а резолвит через async :) совместил лучшее из двух миров

так нельзя! :)

Сергей
18.07.2017
15:10:15
andretshurotshka?❄️кде
18.07.2017
15:10:19
Сергей
18.07.2017
15:10:28
Алексей
18.07.2017
15:10:40
можно
Это слишком хитро

Mike
18.07.2017
15:10:42
чем return не устроило?
тем что я ж хз что я внутри функции

Сергей
18.07.2017
15:11:36
это редкий кейс

и пишется один раз

Алексей
18.07.2017
15:12:20
это редкий кейс
С этим не спорю

Страница 1744 из 5115