
Сергей
20.06.2017
09:38:04

Mikhail
20.06.2017
09:38:13

Dreamerinnoise
20.06.2017
09:38:14
на их основе запилить свой fade
И в него оборачивать то, что нужно скрывать

Google

Dreamerinnoise
20.06.2017
09:38:44
дальше стейтом

Алёна
20.06.2017
09:47:39
ммм. Шпашибо, но, нашла react-motion. Вроде прикольный

Pavel
20.06.2017
09:56:22
Господа, как вы разруливаете различия между объектами, которые получены с сервера и имеют настоящие id (старики) и только что созданными на клиенте пустыми новыми объектами (молодежь), которые на сервер ещё ни разу не посылали?
Молодёжь не может получать id такого же формата из-за опасности возникновения коллизий, например.
Молодёжь и старики по-разному удаляются, да и сохраняются через разные API.
И всё такое прочее.
Я сейчас генерирую молодёжи флаг isNew и даю временный`id` в виде new_42, после сохранения на сервер и получения реального id — заменяю на реальный.
Подход кривоват, но работает.
Есть ли какие решения получше?

Konstantin
20.06.2017
09:57:05

Sergey
20.06.2017
09:57:06
\

Roman
20.06.2017
09:57:14
добавлять к старикам только после сохранения на сервер?

Max
20.06.2017
09:57:35
++

Pavel
20.06.2017
09:57:38

Max
20.06.2017
09:58:02
временный id генери с помощью uuid

Pavel
20.06.2017
09:58:04
Пользователю такие особенности фиолетовы абсолютно

Max
20.06.2017
09:58:07
и коллизий не будет 100%

Konstantin
20.06.2017
09:58:19

Google

Pavel
20.06.2017
09:58:38

Max
20.06.2017
09:58:43
он там по дефолту

Nikolay
20.06.2017
09:58:48
ну и на сервере тоже нужно чтобы uuid

Konstantin
20.06.2017
09:59:38

Pavel
20.06.2017
09:59:53

Max
20.06.2017
10:00:01
obj = {id: uuid}
dispatch(saveObj(obj))
axios.post(url, obj).then((serverObj)=> dispatch(updateTemporaryObject(obj.id, serverObj)
как-то так

Konstantin
20.06.2017
10:00:18
я думал у тебя юзеры геннерятся и типа им надо предварительная айдишка

Pavel
20.06.2017
10:01:07
зачем флаги?
А как разницу в API разрешать? Создать новый объект и изменить старый — это два разных REST-метода.

Nikolay
20.06.2017
10:01:12
надо чтоб на сервере в БД в поле id использовался uuid, на клиенте создается uuid по такому же алгоритму, ну и все это отправляется на сервер, профит

Max
20.06.2017
10:01:14
выше смотри
код

Pavel
20.06.2017
10:01:34
Да, сервер я не контролирую.

Max
20.06.2017
10:01:40
на сервер разумеется без id уходит

Konstantin
20.06.2017
10:01:42

Max
20.06.2017
10:01:43
т.е. POST

Konstantin
20.06.2017
10:02:07

Google

Max
20.06.2017
10:02:20
ибо создание обьекта
это для PUT
но зависит от апи конечно

Konstantin
20.06.2017
10:02:41

Сергей
20.06.2017
10:02:49

Nikolay
20.06.2017
10:02:55

Konstantin
20.06.2017
10:02:59
если релляционные, то иначе

Max
20.06.2017
10:03:18
да похуй вообще что там на сервере создается

Сергей
20.06.2017
10:03:24
то как оно хранится в базе это одно
а то что отдается клиентам другое
если вы отдаете чистый объект из базы, то светлой вам памяти

Pavel
20.06.2017
10:03:25

Max
20.06.2017
10:03:28
ну вот

Max
20.06.2017
10:03:33
флаги только не нужны
они просто лишние — у тебя весь код в одном контексте выполняется

Pavel
20.06.2017
10:05:12

Konstantin
20.06.2017
10:05:17
У всех скайп глючит?

Pavel
20.06.2017
10:05:27
Ну то есть я всё это спрятал в редукторах, конечно, но тем не менее

Max
20.06.2017
10:05:29

Pavel
20.06.2017
10:06:09
какие?
POST CreateNewObj и PUT UpdateObj условно
(исправил)

Google

Max
20.06.2017
10:06:18
ну во-первых наоборот

Pavel
20.06.2017
10:06:36
А, да, наоборот

Max
20.06.2017
10:06:36
а во-вторых что значит различать?

Konstantin
20.06.2017
10:06:54
PUT —-> обновить полностью

Max
20.06.2017
10:06:59
сделай две функции
createObject
upateObject

Konstantin
20.06.2017
10:07:01
Update —-> некоторые поля

Max
20.06.2017
10:07:12
сделай 3
updatePartial :)
разница в том что заменять id ты должен только в createObj

Admin
ERROR: S client not available

Pavel
20.06.2017
10:07:36

Max
20.06.2017
10:07:44
ну
ты походу это в одном месте делаешь просто
и обозвал как-нибудь типа saveObj

Konstantin
20.06.2017
10:08:30
при чём между ПУТ и АПДЕЙТ есть своя разница.
А вот разделять как сохранение нового и старого объекта как ПОСТ и ПУТ не правильно с точки зрения методологии

Pavel
20.06.2017
10:09:11

Max
20.06.2017
10:09:19

Konstantin
20.06.2017
10:09:23

Google

Max
20.06.2017
10:09:34
Саранского ПТУ?

Pavel
20.06.2017
10:09:44

Konstantin
20.06.2017
10:09:51
http://www.restapitutorial.com/lessons/httpmethods.html

Max
20.06.2017
10:10:05
ииии?

Pavel
20.06.2017
10:10:10

Max
20.06.2017
10:10:18
пост - создать
пут - обновить все поля
что не так то?

Pavel
20.06.2017
10:10:38
Всё так

Konstantin
20.06.2017
10:10:41
Блин, перепутал Update === PATCH

Max
20.06.2017
10:10:56
да пофигу

Konstantin
20.06.2017
10:11:00
PUT---Update/Replace, PATCH---Update/Modify

Max
20.06.2017
10:11:01
мы щас преимуществнно про пост )

Сергей
20.06.2017
10:11:12
кинь ссылку на это плиз

Konstantin
20.06.2017
10:11:16
а не про то, как изменить старую запись?

Max
20.06.2017
10:11:20
http://www.restapitutorial.com/lessons/httpmethods.html

Сергей
20.06.2017
10:11:31
о спасибо

Max
20.06.2017
10:11:35

Konstantin
20.06.2017
10:12:01

Max
20.06.2017
10:12:20
if (obj.id) {
this.updateObj(obj)
}
else {
this.createObj(obj)
}