Обновить

Комментарии 6

Не вижу смысла если честно.

Сценарий из примера из начала статьи в первую очередь должен быть реализован на бэкенде, и там нет проблем чтобы обернуть это в одну транзакцию, а на фронте после этого нужно просто обновить ui. А данный стест менеджер по моему мнению, это попытка перекинуть ответственность с бэкенда на фронт, где это в общем-то и не нужно. Хотя идея прикольная.

Upd: возможно я просто не до конца уловил суть, и есть сценарии где такой транзакционный стейт менеджер необходим, но я такого сценария не вижу

Согласен про бэкенд, но на клиенте были уже случаи такие, со сложными состояниями, кучей зависимых запросов. Вообще думаю в сторону агентских систем, что-то там сейчас странное происходит с UI из-за тысяч событий, которые приходят через SSE, пока изучаю.

Как уже написал, пока просто баловство :)

Прикольно получилось. Решал подобную задачу в части управления цепочкой асинхронных функций. Но я тогда пришел к выводу, что усложнять код фоллбеками каждого шага не стоит, потому что проще отменить основную цепочку и начать новую. Ну, у каждого свой кейс. Спасибо за то, что делитесь опытом в любом случае.

Тут скорее паттерн сага, где важно откатывать какую-то транзакцию в цепочке, а не целиком, спасибо за отзыв :)

Это на беке нужно делать, на клиенте вообще безумие управлять балансом и тд

Глобально да, согласен, это чисто эксперимент, но могу сказать сложные цепочки событий встречаются на клиенте в том числе. Думаю кому-то может пригодиться, хоть это и просто эксперимент.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации