169 похожих чатов

Сори, я из села, но зачем нужен этот мудрёный Ngrx

для состояний, если тупо есть сервисы?

Чисто чтобы видеть Истрию изменения стейтов?

19 ответов

7 просмотров

Паттерны же

Frontend-Account Автор вопроса
Roman Babiak
Паттерны же

Каво? Усложнять код ради паттернов?)

Frontend-Account Автор вопроса
Frontend Account
Каво? Усложнять код ради паттернов?)

Даже не так. Ухудшать читаемость кода ради паттернов?)

Frontend Account
Даже не так. Ухудшать читаемость кода ради паттер...

Почему ухудшать? Как раз в случае стора понятно что происходит. А в случае сервисов надо разбиратся в логике автора

Юра 🪐
Почему ухудшать? Как раз в случае стора понятно чт...

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

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

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

Frontend-Account Автор вопроса
Александр Мармеладов
А почему бы и нет? История изменения стейта иногда...

Истрию изменений можно реализовать самому намного проще

Frontend Account
Истрию изменений можно реализовать самому намного ...

С удовольствием бы посмотрел на реализацию, есть ссылка?

Frontend Account
Истрию изменений можно реализовать самому намного ...

Если ссылки нет, то хотя бы концепцию - очень интересно.

Frontend-Account Автор вопроса
Александр Мармеладов
Если ссылки нет, то хотя бы концепцию - очень инте...

Делаем класс State, который в себе хранит список объектов, где ключ – название состояние, а значение – список состояний. И есть метод set, который принимает в себя объект с ключом – названием состояния и значением – самим состоянием. Он добавляет в список состояний новое и возвращает значение этого объекта, чтобы можно было сделать так this.value = state.set({stateName: stateValue}) И this.value становится stateValue Самое простое что пришло в голову, куда уж проще

Frontend Account
Делаем класс State, который в себе хранит список о...

Расход памяти оцените, каждый раз копировать весь стейт?

Oleg Safonov
Расход памяти оцените, каждый раз копировать весь ...

Однако все модные "функциональные" стейт менеджеры на флакс архитектуре так и работают, а не при помощи undo/redo паттерна

Похожие вопросы

Обсуждают сегодня

а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
Добрый день. Хочу сделать отрисовку по команде на панели. Почему-то рисуется только при втором вызове. С чем может быть связано, не подскажете? procedure TForm1.FormDblClick(...
Kirill Filippenok
20
Всем доброго дня! Подскажите может кто использовал связку Pagebuilder + Clientsetting. Сами параметры с типом pagebuilder в модуле Clientsetting работают нормально, можно такж...
Александр Добриков
12
А почему в си некоторые вещи работают с двойными кавычками некоторые с одинарными? Нельзя было все сделать с одними или чтоб работало с разными? например чтоб выводить строки ...
.
15
Всем привет! Нужен совет от опытных. Переношу свой проект с Делфи 10.2 Токио на Лазарус 3.2 установленный через инсталлятор fpcupdeluxe-x86_64-win64. При импортировании проект...
Дмитрий Завгородний
7
Эх кто-то пришел и весь праздник испортил :( You need complex FBX scene importing setup to change things on import? good luck with that. You need navigation and pathfinding? g...
Serg Gini
5
Всем привет! Подскажите. Я написал приложение на Delphi 10.2 Tokyo под Windows 10. И передо мной стал вопрос о том чтобы сделать это приложение кроссплатформенным (под Linux и...
Дмитрий Завгородний
24
Всем привет! procedure TForm1.FormCreate(Sender: TObject); type TStartEnd = record S: Byte; E: Byte; end; var a, b: TStartEnd; begin {1} a.S := 1; {2} a.E := 2; ...
Руслан Михайлович
10
Всем привет!) я тут новенький и пытаюсь освоить evolution методом тыка. У меня при переходе между папками файлов выскакивают вот такие уведомления Можете подсказать как их от...
Диман Samoed
10
Какого хера? /Sources/App/Modules/User/Models/UserLinkApple.swift:21:20: warning: stored property '_id' of 'Sendable'-conforming class 'UserLinkApple' is mutable @ID(...
Alexander Sherbakov
14
Карта сайта