
Oleg ?
29.05.2017
14:29:37
Например прилетело сообщение: "удалено сообщение с id: server_id"
И теперь мне нужно будет его искать и удалять

Mike
29.05.2017
14:35:41
И как это сделать?
ну например можно этот айди в пейлоад запроса пулить, и на сервере его запоминать и в ответ вставлять

Oleg ?
29.05.2017
14:36:56
На сервере автоикремент и PrimaryKey

Google

Oleg ?
29.05.2017
14:37:23
ааа
Ты об этом, не я и так знаю, ответ - у меня там санки и обычное замыкания
Проблема с обновлением
Стора
Частичный ответ на мой вопрос, который не устроил https://stackoverflow.com/questions/34600386/whats-the-best-way-to-replace-generated-id-with-server-id-in-redux-application
Вообщем забил искать решение, буду хранить не в объекте, а в массиве

Konstantin
29.05.2017
14:55:03
Я однажды обмолвился, что массивы это норм, и мне тут сразу хуёв понатыкивали

Max
29.05.2017
14:55:59
Не очень удобно
Почему нельзя просто одно ид хранить?

Oleg ?
29.05.2017
14:58:08

Google

Max
29.05.2017
14:58:25
Ну генери ил
Ид

Konstantin
29.05.2017
14:58:30

Max
29.05.2017
14:58:31
После Сейва его заменяй

Oleg ?
29.05.2017
14:58:57
У меня был аргумент, почему это плохо

Konstantin
29.05.2017
14:59:05

Max
29.05.2017
14:59:14
Все вы так говорите

Oleg ?
29.05.2017
14:59:19
Но я забыл почему

Konstantin
29.05.2017
15:01:32
ладно, я ошибся. допустил грамматическую ошибку. даже не заметил, что слово было подчеркнуто. это потому-что я уже конкретно заебался за сегодня и голово не соображает ничего.

Oleg ?
29.05.2017
15:03:00
Зачем оправдываться, когда можно просто написать: ok, да

Max
29.05.2017
15:03:49
У меня на проекте щас в стейт не кладётся пока от сервера ответ не подучу
Тоже смешная третья опция

Konstantin
29.05.2017
15:04:57

Oleg ?
29.05.2017
15:05:11
Надо выбирать что - то одно
А не сразу оба, а то звучит, как - то агрессивно
А так нейтрально
Поэтому в стейте оно хранится

Google

Max
29.05.2017
15:06:09
Храни в локальном сбейте
Стейте

Oleg ?
29.05.2017
15:10:27
А как отрисовывать прогресс в другой части приложения?
@syabro

Max
29.05.2017
15:11:21
Тут да, глобальный стейт. У тебя несколько объектов может грузиться?

Oleg ?
29.05.2017
15:11:29
Да
Вообще задача про загрузку файлов

Max
29.05.2017
15:11:51
Хотя пофигу. У тебя в санках через замыкание будет доступен локальный ид

Oleg ?
29.05.2017
15:12:05
После загрузки мне возвращается их ID
Перезаписывать думаешь?

Max
29.05.2017
15:12:22
Блин. Я с телефона
Набери в телегу

Max
29.05.2017
15:12:30
Лень писать

Oleg ?
29.05.2017
15:13:09
Ща
Решили подменять ID
*Заменять

Николай
29.05.2017
15:28:40
Поставил бряк в componentDidUpdate и вижу что он, а следовательно и doPrefetch, который отправляет запрос к бекенду, вызываются постоянно, независимо от результата shouldComponentUpdate.
Call Stack при вызове метода вот такой

Google

Николай
29.05.2017
15:29:12
Нагуглил что есть иструмент Perf (https://facebook.github.io/react/docs/perf.html), но я его явно не добавлял в приложение/
Подскажите что за mesaureLifeCyclePerf? почему он постоянно вызывается? и как быть в такой ситуации?

? ethorz
29.05.2017
15:33:05
componentWillReceiveProps
там ты под условие проверяй
this.props в нем будет указывать на предыдущее значение
а в параметрах укажи props > это новые пропсы
если проходит то вызвай метод

Николай
29.05.2017
15:42:11
спасибо! помогло))

Admin
ERROR: S client not available

Николай
29.05.2017
15:42:34
Но все же, мне интересно. В документации сказано:
"Use this as an opportunity to operate on the DOM when the component has been updated. This is also a good place to do network requests as long as you compare the current props to previous props (e.g. a network request may not be necessary if the props have not changed)."
Т.е. в теории этот метод можно и нужно использовать для выполнения запросов к бекенду. А на практике получается что нет. Как так?
Судя по исходникам, в прод-сборке такого поведения не будет. Но как же быть с дев сборкой?

Nikita
29.05.2017
15:52:23

Николай
29.05.2017
15:52:37
params = 1

Nikita
29.05.2017
15:55:58
а форсапдейт зачем?

Max
29.05.2017
15:56:48
Точно 1? Я не уверен что Фета умеет в инт в качестве параметра
Фетч

Николай
29.05.2017
16:04:19

Max
29.05.2017
16:04:31
А, ок )

Nikita
29.05.2017
16:04:51
params = 1
ну ты знаешь ведь что при первом маунте, любом setState и forceUpdate shouldComponentUpdate не будет вызываться?

Николай
29.05.2017
16:09:04

Google

Николай
29.05.2017
16:09:48
т.е. по идее shouldComponentUpdate должен вызываться после setState
хотя я использую реакт недавно, поэтому не уверен
ну вообще насчет forceUpdate согласен. по хорошему там наверно нужно переписать shouldComponentUpdate так чтобы он учитывал изменение стейта

Nikita
29.05.2017
16:12:25

Николай
29.05.2017
16:15:56

Nikita
29.05.2017
16:16:25

Николай
29.05.2017
16:16:36
аа
В общем, проблема была в моих флагах
Вот такой вариант работает, если кому интересно
А еще вопрос. Нужно ли в shouldComponentUpdate учитывать изменение children?

Den
29.05.2017
16:45:55

Николай
29.05.2017
16:47:51
эмм... раз children часть props, то по идее нужно. С другой стороны, по-моему, children это не совсем обычное свойство и возможно реакт сам определяет его изменение

Den
29.05.2017
16:53:58
Ключевое слово "возможно"
Но нет )

Николай
29.05.2017
16:56:29

Den
29.05.2017
16:58:14
Для компонента children такой же prop, как и все остальные

Zae
29.05.2017
17:08:50
а использование тайп чекера это маст хев?

Nikita
29.05.2017
17:11:30