@react_js

Страница 1142 из 5115
Vladimir
29.03.2017
22:58:03
Ну пришел и пришел

Делаешь с ним что нужно

Nikita
29.03.2017
22:58:33
не понимаю твоей логики)

Vladimir
29.03.2017
22:59:01
Зачем тебе приходят апдейты? Чтобы ты их куда то положил

Google
Vladimir
29.03.2017
22:59:05
Ну так положи

Зачем что то фетчить

Nikita
29.03.2017
22:59:13
ты о том, что гарантированно либо юзер прийдет свежий, либо юзер, а за ним апдейт?

Vladimir
29.03.2017
22:59:27
Я просто не совсем понимаю, что в апдейте

Если апдейт - это патч на юзера, то он вообще не нужен

Дмитрий
29.03.2017
22:59:44
Вангую, что тут ещё стейт не нормализованный

Nikita
29.03.2017
22:59:45
инфа о юзере, по которой я за ним могу сходить на сервер

Дмитрий
29.03.2017
22:59:52
раз нельзя просто положить данные по нужному id

Nikita
29.03.2017
22:59:53
а могу не ходить, если он у меня уже есть

Aleh
29.03.2017
23:00:29
а если нету, то заигнорь

Vladimir
29.03.2017
23:00:52
Короче, если речь просто об апдейтах структуры, то пока ты первый раз ее не получил, то и апдейты тебе не нужны

Можно их просто выкидывать, а лучше вообще на них не подписываться

Nikita
29.03.2017
23:07:39
ну ок, список. есть список, есть апдейты, в какой-то момент ты пошел загружать кусок списка, прилетает апдейт, тут есть желание обработать после загрузки чанка.

Google
Nikita
29.03.2017
23:09:11
смысл вообще простой, пока ты делаешь асинхронную операцию, может прилететь какой-то апдейт, надо его отложить до конца этой асинхронной операции

например удаляешь элемент из списка, а сборку прилетает апдейт об изменении этого элемента

Выкидывать такой апдейт нельзя, вдруг удаление сфейлится

Denis
29.03.2017
23:14:30
Никто не знает твоей архитектуры

Дмитрий
29.03.2017
23:41:06
Выкидывать такой апдейт нельзя, вдруг удаление сфейлится
Я тебе уже описал, как стоит действовать) Нужно просто разделять сам факт хранения данных в стейте и их использование. Пришёл к тебе апдейт, в котором user :: { id: 123, online: true } Ты просто сохраняешь их в сторе типа как { users: { 123: { online: true } } } и больше ничего, что делать с этими данными - ты потом решишь

Короче, раз ты не выбираешь, когда в какого юзера писать данные, то стор у тебя просто должен быть готов в любой момент записать любые данные в любое поле

Если нужно явно отделить сохраненные данные, то просто клади апдейты в какое-нибудь поле вроде updates

А первоначальное решение неправильно по целому ряду причин. Кроме того, что ломается single point of truth и редюсеры со стейтом просто бессмысленны, ещё и экшны нельзя применять пачкой

На последнее правило как всегда можно обоснованно ответить, что тебе прям очень надо, но, как правило, это просто будет приводить к неконсистентному состоянию в приложении

Ave
30.03.2017
00:53:40
vendor.bundle.js.1 100%[===================>] 12.47M --.-KB/s in 0.09s

это дев, многовато че то, у всех так?

Mike
30.03.2017
03:37:41
Нет

Oleg
30.03.2017
06:13:35
Всем привет!

Nikolay
30.03.2017
06:16:25
привет!

Ramazan
30.03.2017
06:47:25




Ostap
30.03.2017
06:48:19
.bind

Или arrow func

Сергей
30.03.2017
06:49:13
чувак ну иди в #noobs и учи матчасть особенно ту часть, где описан контект вызова функции на объектах

Google
Ostap
30.03.2017
06:49:19
https://medium.com/@housecor/react-binding-patterns-5-approaches-for-handling-this-92c651b5af56

Ramazan
30.03.2017
06:49:43
спасибо

Kirill
30.03.2017
07:20:13
5 моё любимое.

Anton
30.03.2017
07:20:27
Плодить функции в render получается плохо, а плодить функции на каждый инстанс - хорошо :(

Oleg
30.03.2017
07:21:20
не стоит плодить функции сверхнеобходимости ?

Anton
30.03.2017
07:22:07
Нам нужно больше абстракций!

Алексей
30.03.2017
07:27:43
Плодить функции в render получается плохо, а плодить функции на каждый инстанс - хорошо :(
Обычно render может вызываться очень часто, создавая мусор и как следствие нагрузку на gc, а инстанс создается заметно реже вызова рендера, да и без создания функций на каждый инстанс не обойтись, так как им обычно нужны props, state и прочие вещи из this.

Dmitry
30.03.2017
07:29:05
Привет! Можете подкинуть еще интересных канальчиков (не обязательно рус) по мобильным аппам, реакту, метеору, реакт-нативу, девопсу? буду благодарен )

Anton
30.03.2017
07:29:07
Мне просто интересно насколько пункт 5 со стрелочными функциями больше жрет чем биндинг в конструкторе. Надо посмотреть во что Бабель это превращает.

Алексей
30.03.2017
07:32:15
хотя в принципе бабелю по идее ничего не мешает сгенерировать код с bind

Anton
30.03.2017
07:33:19
GC передаёт приветы. Hidden classes и вообще компилятор тоже.

С биндом как-то лайтовее будет.

Алексей
30.03.2017
07:33:54
это не критично

Сергей
30.03.2017
07:34:10
оптимизация на спичках?

Anton
30.03.2017
07:34:27
Тут спичка, там списка и привет.

Алексей
30.03.2017
07:34:35
а вот создавать функции в рендере, которы теоретически может вызываться десятки и сотни раз в секунду - не самая лучшая идея

Google
Anton
30.03.2017
07:34:53
На старой работе все такие случае решали передачей контекста для вызова. Никаких биндов не надо даже.

Сергей
30.03.2017
07:35:04
в рендере конечно, а вот в конструкторе bind или замыкание, вообще похеру

Алексей
30.03.2017
07:35:26
именно

Anton
30.03.2017
07:35:33
А, ну да, это же чатик про реакт ;)

Anton
30.03.2017
07:36:09
По сотне тысяч. И выбора то нет.

Admin
ERROR: S client not available

Алексей
30.03.2017
07:36:47
почему нет?

Anton
30.03.2017
07:38:29
Или локальная функция. Или через бинд. Или через call. Apply тормозной.

Алексей
30.03.2017
07:38:48
ну apply/call тоже по сотне раз в секунду тоже не айс
не айс руками всё это дело писать

Anton
30.03.2017
07:39:34
А реакте при всём желании call не заюзаешь.

Алексей
30.03.2017
07:39:38
кстати да, там могут лишние массивы создаваться

Ilya
30.03.2017
08:52:26
Привет! Коллеги, подскажите один момент. Ипользую для интернационализации react-intl, в локали en-GB вместо знака рубля валюта отображается как RUB2,000, в ru-RU все окей - 2 000 ₽. Есть ли какой-нибудь способ изменить отображение валюты для локали en-GB на ₽2,000 ?

Сергей
30.03.2017
08:53:56
в en-GB знак рубля должен быть После количества

Ilya
30.03.2017
08:58:47
Насколько я знаю, все верно. Знак валюты в en-GB как и в en-US локалях идет в самом начале. Вот что Chrome выдает в консоли Intl.NumberFormat("en-US", { style: 'currency', currency:"RUB", currencyDisplay: "symbol"}).format(12345); // => RUB12,345.00

Intl.NumberFormat("en-GB", { style: 'currency', currency:"RUB", currencyDisplay: "symbol"}).format(12345); // => RUB12,345.00

Denis
30.03.2017
09:01:06
Может каренси поменять ??

Или в гб тоже рубли

Max
30.03.2017
09:01:49
вообще странно

Google
Max
30.03.2017
09:01:57
почему карренси зависит от локали

Denis
30.03.2017
09:02:13
Ну как бы сахар и молоко

Ilya
30.03.2017
09:02:34
каренси не зависит, валюта одна

Max
30.03.2017
09:02:35
на ум приходит только что знака ₽ может быть чисто российским

и за рубежом его не используют

Ilya
30.03.2017
09:03:05
FormattedNumber из react-intl вовзращает такую вот ерунду.

Max
30.03.2017
09:04:23
https://ru.wikipedia.org/wiki/%D0%A1%D0%B8%D0%BC%D0%B2%D0%BE%D0%BB_%D1%80%D0%BE%D1%81%D1%81%D0%B8%D0%B9%D1%81%D0%BA%D0%BE%D0%B3%D0%BE_%D1%80%D1%83%D0%B1%D0%BB%D1%8F

Denis
30.03.2017
09:04:59
Еще возможно что нужно подгрузить обе локали

Denis
30.03.2017
09:06:11
https://github.com/yahoo/react-intl/issues/812

Andrey
30.03.2017
09:23:33


Всем привет. Что-то я зашкварился немного, никак не пойму в чем проблема.

Pavel
30.03.2017
09:27:53
Если в проекте используется bootstrap css, можно вель просто подключить css и не юзать react-bootstrap, чтобы не усложнять? Преимуществ у react-bootstrap в этом случае нет же почти, кроме меньшего набора кода?

Andrey
30.03.2017
09:28:59
нет, используется material-ui

Pavel
30.03.2017
09:30:03
у меня вопрос был, а не ответ на твой...

Andrey
30.03.2017
09:30:22
сорри

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