как лучше построить архитектуру в моём случае: приложение создается с нуля на Angular 12, стейт менеджер - Akita, стратегия компонентов OnPush, также используются компоненты devExtreme. Есть массив объектов (т.к. стратегия OnPush, без подписки на изменение этого массива он не отображался при первой инициализации таблицы, поэтому я сделал его BehaviorSubject), который приходит от API и отображается в таблице, весь массив целиком я засунул в стор. Далее создал дочерний попап-компонент с разными блоками для изменения данных ячеек строки таблицы, в который по клику на кнопку в строке таблицы родителя передаю данные этой строки через @Input. Напрямую изменить объект, приходящий из @Input я не могу, т.к. он походу в составе массива BehaviorSubject. Пытался склонировать этот объект, изменять его копию и её возвращать в стор при нажатии кнопки сохранить в попап-окне (пока неудачно). Не хочется делать костыльные решения ввиду неопытности, поэтому буду благодарен за подсказку, как в данном случае можно организовать это дело?
А стейт обновляется после внесения изменений?
ну да, я и хотел собрать информацию, которую пользователь поменял в попап-окне и применить изменения к стейту + надо отправить это на сервер
Как в таблицу передаёте данные? Передавайте через async.
Обсуждают сегодня