Size: a a a

JavaScript.Ninja

2020 September 01

IK

Illya Klymov in JavaScript.Ninja
Alexander Shamshurin
Мне кажется это все-таки решение ближе к redux. Я за простой mobx - потому что он 1) реактивный 2) нет никаких контейнеров 3) намного меньше кода.
как раз в этом и была проблема - начинали с простого mobx, но реактивность приводила к забавным состояниям гонки между "сторами" (когда в результате синхронизации накатывается пачка апдейтов, но они приходят "тиками") и это было очень больно
источник

IK

Illya Klymov in JavaScript.Ninja
когда прилетает апдейт на Х-надцать тысяч записей (мелких, но много), их надо локально обсчитать с тем что лежит в indexeddb тут очень неприятно когда стора оказывается в "неконсистентном" состоянии
источник

IK

Illya Klymov in JavaScript.Ninja
Как раз этот проект заставил меня сменить мнение с того что редакс однозначное зло
источник

AS

Alexander Shamshurin in JavaScript.Ninja
Illya Klymov
как раз в этом и была проблема - начинали с простого mobx, но реактивность приводила к забавным состояниям гонки между "сторами" (когда в результате синхронизации накатывается пачка апдейтов, но они приходят "тиками") и это было очень больно
Ну ведь она приходила в нужном порядке? Один за другим просто часто?
источник

IK

Illya Klymov in JavaScript.Ninja
Alexander Shamshurin
Ну ведь она приходила в нужном порядке? Один за другим просто часто?
"в нужном порядке" с точки зрения сервера :)
источник

IK

Illya Klymov in JavaScript.Ninja
"порядок" на клиенте и на сервере могут отличаться
источник

AS

Alexander Shamshurin in JavaScript.Ninja
А один большой вместо тысяч маленьких? Ручной батчинг? Там же есть
источник

AS

Alexander Shamshurin in JavaScript.Ninja
траназкции там же есть
источник

IK

Illya Klymov in JavaScript.Ninja
не выйдет, потому что мне нужно уметь отображать неконсистентное состояние и логика "доведения" до консистентности плотно завязана на взаимодействие с пользователем
источник

IK

Illya Klymov in JavaScript.Ninja
грубо говоря мы получаем состояние с сервера, и потом с помощью пользователя интерактивно решаем конфликты
источник

IK

Illya Klymov in JavaScript.Ninja
с mobx когда данные лежат в пачке разных сторов это очень больно было
источник

AS

Alexander Shamshurin in JavaScript.Ninja
Кейс интересный, но мне кажется сильно специфичный, возможно в этом случае инструмент не оптимален, но даже вот этот случай не дает мне повода думать делать что-то на redux.
источник

AS

Alexander Shamshurin in JavaScript.Ninja
Illya Klymov
с mobx когда данные лежат в пачке разных сторов это очень больно было
А почему много сторов, а не один с модулями?
источник

IK

Illya Klymov in JavaScript.Ninja
Alexander Shamshurin
Кейс интересный, но мне кажется сильно специфичный, возможно в этом случае инструмент не оптимален, но даже вот этот случай не дает мне повода думать делать что-то на redux.
ваше право )
источник

VK

Vladimir Klimov in JavaScript.Ninja
Есть же какой-нибудь реатом, который "как редакс, только лучше")
источник

IK

Illya Klymov in JavaScript.Ninja
в тот момент реатом не был актуален
источник

AS

Alexander Shamshurin in JavaScript.Ninja
Illya Klymov
ваше право )
Согласны ли вы с этим? Что кроме таких вот случаев редких, когда "автоматическая коробка" не подходит, нужно все таки избегать rdux и не пропагандировать его как типичное решение даже простых задач.
источник

IK

Illya Klymov in JavaScript.Ninja
не согласен
источник

AP

Alexey Pan in JavaScript.Ninja
Всем привет, у когото был опыт контрибьютинга в хром?
источник

VN

Vitaliy Nizhankovski... in JavaScript.Ninja
там кажется надо передавать в value полный опшин, { value: …, label: ... }
источник