AngularJS dwa komponenty i $watch

AngularJS dwa komponenty i $watch
DI
  • Rejestracja:ponad 10 lat
  • Ostatnio:ponad rok
  • Postów:32
0

Witam Was,

Mam problem, szukam rozwiązania już od dłuższego czasu, jednak nadal nie znalazłem. Może nawet nie tyle co rozwiązania, a potwierdzenia czy w moim przypadku rozwiązanie jest złą/dobrą praktyką.

W tym momencie nie będę wrzucał kodu, myślę, że wystarczy go opisać. Mianowicie mam dwa komponenty, które rejestruję do głównego modułu aplikacji. Komponent 1 updatuje wartości w serwisie, który jest również zarejestrowany w głównym module aplikacji. Po tej operacji Komponent 2 powinien wprowadzić zmiany (wartości bierze z tego samego serwisu) w widoku.

W tym momencie wszystko działa, niestety na zasadzie nieszczęsnego $watch w Komponencie 2, gdzie obserwuje wartość pola z serwisu.

Proszę o poradę, czy takie rozwiązanie jest poprawne?

Z góry dzięki za pomoc.

SZ
  • Rejestracja:prawie 11 lat
  • Ostatnio:ponad 4 lata
  • Postów:616
0

na scopie masz też $emit $boradcast $on

DI
  • Rejestracja:ponad 10 lat
  • Ostatnio:ponad rok
  • Postów:32
0

Hej, dzięki za odpowiedź.
Ogóle byłoby idealnie gdybym mógł całkowicie wyeliminować $scope.

Wybacz, zapomniałem o tym napisać ;)

0

Czy to znaczy, że jeżeli chcę zrobić dwie listy rozwijane to musiałbym zdefiniować nowe $emit $boradcast $on?
Przykład wrzuciłem na innym forum z pytaniem dlaczego Angular nie chce mi stworzyć drugiego menu.
https://www.w3schools.com/code/tryit.asp?filename=FJFNUCZOGWFN
Jeśli mam dobre przeczucie, to pomoże mi ktoś przekształcić kod na mozliwość użycia dwóch lub więcej list?

DI
  • Rejestracja:ponad 10 lat
  • Ostatnio:ponad rok
  • Postów:32
0

pop3k, po pierwsze, nie ten temat. Ze swoim pytaniem proszę Cię o opuszczenie tego tematu.
Dwa, definiujesz dwie aplikacje na jednej stronie, a więc prawdopodobna przyczyna i możliwość naprawy: https://stackoverflow.com/questions/12860595/how-to-define-two-angular-apps-modules-in-one-page

Trzy, proszę admina o usunięcie powyższego postu ponieważ nijak ma się do tematu, nie jest nawet z nim związana.

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.