Hej, natknąłem na lekki problem w moim kodzie, mam metodę która odpowiada za pare zmian w widoku, jakieś proste flagi typu isFormLoading = true, poza tym metoda ma w sobie metodę post a w tapie zmiana flagi isFormLoading na false, problem jest taki, że ta metoda będzie powtarzana w 10 komponentach ale jest możliwość, że np. w 3 z nich zachowanie ulegnie małym zmianom i będzie trzeba dopisać parę linijek kodu. Pytanie teraz brzmi tak: Czy warto to wynosić do jakiegoś serwisu i czy w ogóle powinienem to w taki sposób ogrywać bo w metodzie jest jednak api call, jak byście do tego podeszli, zostawiać? ;)

- Rejestracja:około 7 lat
- Ostatnio:5 miesięcy
- Lokalizacja:Poznań
- Postów:163

- Rejestracja:około 6 lat
- Ostatnio:około 5 godzin
a co te isFormLoading robi? Jeśli pokazuje jakiś spinner na czas ładowania to może warto to opakować w komponent który będzie się tym zajmował, renderował właściwą treść jako ngContent i wyświetlał tę treść zastępczą w czasie ładowania (ew. wyłączał formularz)


- Rejestracja:około 11 lat
- Ostatnio:około 2 godziny
- Postów:8423
Mateuszto napisał(a):
Hej, natknąłem na lekki problem w moim kodzie, mam metodę która odpowiada za pare zmian w widoku, jakieś proste flagi typu isFormLoading = true, poza tym metoda ma w sobie metodę post a w tapie zmiana flagi isFormLoading na false,
Czemu tak imperatywnie? Myślałem, że w Angularze się korzysta z obserwabli z Rx.js, które emitują kolejne wartości w czasie, a nie lata z flagami i zmienia widoki na żywca. Jak zwierzęta xD

- Rejestracja:około 7 lat
- Ostatnio:5 miesięcy
- Lokalizacja:Poznań
- Postów:163
Nie zawsze warto używać observabli do prostego ngifa, dodatkowy kod, nextowanie wartośći i jeszcze zwrócenie jako observable np, subjecta ;) Szkoda zachodu. Ogólnie temat ogarnięty i przez specyfike projektu nie da rady tego w fajny sposób wydzielić, w sensie dałoby ale za dużym effortem więc zostawiam

- Rejestracja:około 7 lat
- Ostatnio:5 miesięcy
- Lokalizacja:Poznań
- Postów:163
@LukeJL: Poza tym czekam za angularem 16, wtedy może fajnie takie rozwiązania w komponencie będzie można ograć signalsami, teraz najlepsze rozwiązanie to prosta flaga + detectChanges ewentualne jeśli potrzeba. Jeśli miałbym komunikacje między komponentami to spoko użyłbym jakiegoś subjecta i po sprawie + Jak zwierzęta? To daj inny pomysł który będzie lepszy
- Rejestracja:około 5 lat
- Ostatnio:8 dni
- Postów:57
Takim refaktoringiem (gdzie powtarza ci się praktycznie 1 linijka i każde zachowanie może wyglądać inaczej) narobisz sobie więcej problemów niż przyniesie to pożytku.
Zazwyczaj jeśli masz wątpliwości czy coś wymaga refaktoringu to prawdopodobnie ten refaktoring wcale nie jest wymagany.
Zarejestruj się i dołącz do największej społeczności programistów w Polsce.
Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.