использовать?
Посмотрел на ngrx много файлов много кода и не особо понял профита в ngxs кода вроде поменьше но все равно смущает
смотрю года два назад был просто бум на эти хранилища, а сейчас во многих старт китах вижу вырезали всё это
и где то видел комментарий, что пользы реальной это не приносит только усложняет процесс разработки, много лишнего кода который усложняет чтение и понимание.
Кто что скажет, интересно мнение тех кто использует ngrx или ngxs стоит ли внедрять?
Зависит от размера проекта, кол-во людей. Как хорош бэк. Но при большом проекте лучше использовать.
Не пользовался ngxs, но из того, что слышал, ngrx можно назвать более низкоуровневым: больше возможности для конфигурации. Но это только из слухов) А вообще без стейт менеджмента по мере роста проекта становится очень тяжело. Да даже в небольших проектах. Данные будут раскиданы по каким-то сервисам, завязанным друг на друге и т.п. Ngrx все унифицирует и даёт крутые девтулы, что сильно упрощает. Рано или поздно сам приходишь к тому, что нужно писать какой-то стейт. А тут уже либо пиши велосипед, либо бери готовое решение.
если вы берете любой стейтменеджер аля redux(ngrx/ngxs), то готовтесь к тому, что придется писать очень много бойлерплейта. Скорость разработки будет всегда линейная и увеличить ее не получится. из конкретных минусов ngrx - одна глобальная шина данных и одно хранилище, из-за чего масштабировать приложения почти невозможно. Если вы хотите заявить, что есть лейзи, то не забывайте, что как только лейзи часть будет подгружена - она по сути станет одним целым с общей шиной(на счет ngxs не знаю, но например akita устроена другим образом и лучше поддается масштабированию) Ну и конечно, как все любят говорить - с ngrx все просто. Но это не так. Как только нужно выйти за рамки стандартных задач, вы сразу столкнетесь с большим кол-вом боли. Например, у вас есть список данных, и фильтры к нему. Вы описали для них редьюсер, экшены, селекторы, эффекты(и возможно написали на все это тесты, надо бы). Сначала у вас один такой список. Но потом заказчик захочет разделить окно на 2, и сравнивать результаты двух списков. С 2 разными фильтрами. Сколько бойлерплейта еще вам придется написать, чтобы решить данную проблему?
Обсуждают сегодня