Size: a a a

Советский Angular

2021 May 08

Вキ

Вертихвост キバ 🏡🦊... in Советский Angular
То есть, у нас есть сервис, и от этого сервиса зависят компоненты А и Б

Сервис хранит в себе данные, и может выдавать эти данные для компонентов. Например, компонент А может вызвать у сервиса метод дайСписокКатегорий(), чтобы получить категории, а компонент Б может вызвать метод дайСписокТоваровАктивнойКатегории().

И когда компонент А вызовет у сервиса метод установиАктивнуюКатегорию(категория), то изменения по товарам прилетят в компонент автоматически.
источник

AT

Arams Tomojans in Советский Angular
Затея именно такая у меня. Это снимет кучу проблем). Я пол ночи размышлял как я мог так прошляпить такой подход
источник

Вキ

Вертихвост キバ 🏡🦊... in Советский Angular
И тогда,

компонент А знает где получить категории и где надо установить активную категорию и умеет отобразить эти категории

компонент Б знает где получить список товаров по активной категории и умеет отобразить эти товары

сервис обрабатывает все методы и инкапсулирует всю логику работы с данными в одном месте
источник

AT

Arams Tomojans in Советский Angular
Значит подход нормальный
источник

Вキ

Вертихвост キバ 🏡🦊... in Советский Angular
Но, BehaviorSubject не должен торчать наружу у сервиса)
источник

AT

Arams Tomojans in Советский Angular
Ввызодит при клике на категорию из компонента вызывать функцию которая будет возвращать список категорий? И тогда BS уже не нужен?
источник

AT

Arams Tomojans in Советский Angular
Какова его роль если на него не будет подписки в компоненте?
источник

Вキ

Вертихвост キバ 🏡🦊... in Советский Angular
он хранит твой стейт
источник

AT

Arams Tomojans in Советский Angular
Не понял)). Мне подписываться на него в компоненте или нет?)
источник

Вキ

Вертихвост キバ 🏡🦊... in Советский Angular
он должен быть сокрыт от компонента с помощью метода в сервисе
источник

AT

Arams Tomojans in Советский Angular
Он может быть private и +1 переменная посредник
источник

Вキ

Вертихвост キバ 🏡🦊... in Советский Angular
или нескольких методов
источник

Вキ

Вертихвост キバ 🏡🦊... in Советский Angular
может
источник

Вキ

Вертихвост キバ 🏡🦊... in Советский Angular
но лучше метод)
источник

AT

Arams Tomojans in Советский Angular
👍 Понял, спасибо) сеттеры и геттеры в общем
источник

Вキ

Вертихвост キバ 🏡🦊... in Советский Angular
сеттер там не нужен
источник

Вキ

Вертихвост キバ 🏡🦊... in Советский Angular
геттер будет хуже, чем метод
источник

Вキ

Вертихвост キバ 🏡🦊... in Советский Angular
потому что метод позволяет добавить дополнительные параметры при необходимости
источник

AT

Arams Tomojans in Советский Angular
Благодарю 👍
источник

MG

Moe Green in Советский Angular
👍
источник