DrizztDoUrden
DrizztDoUrden
#webdev #angular #typescript #csharp

Pytanko do bindowania danych. Mam główny komponent w którym chciałbym coś wyświetlać przez cały czas działania aplikacji. Nie mogę niestety dobrze wykorzystać tu Observable przez co interesująca mnie wartość pojawia się dopiero po odświeżeniu strony (bo wywołuje się drugi raz OnInit). Kod jest następujący: https://pastebin.com/C3aGaqzt

Próbowałem to bindować już chyba na 50 różnych sposobów i nic. Z góry dzięki za pomoc.
1
  • Najlepsze
  • Wszystkie komentarze
DrizztDoUrden
DrizztDoUrden
@epi: dobra, gra i buczy. Błąd wywalało bo wcześniej już ustawiałem te wartość, czego nie zauważyłem. Dzięki za pomoc :)
2
DrizztDoUrden
DrizztDoUrden
@epi: dzieki , jutro sprawdzę i dam znac czy zadziała :)
1
epi
@DrizztDoUrden jak nie ma next, to może nie jest ovservablem :)
1
a.....1
a.....1
@DrizztDoUrden: możesz pobrać raz i zapisać np. w localstorage
0
DrizztDoUrden
DrizztDoUrden
@akcza11: Wartość w serwisie jest zaaktualizowana, problemem jest to że komponent nie aktualizuje tej wartości po zmianie.
0
a.....1
a.....1
@DrizztDoUrden: jest zmieniana po stronie serwera?
0
DrizztDoUrden
DrizztDoUrden
@akcza11: Po zalogowaniu, wywołuje te metodę z serwisu: this.authService.getCurrentUserInfo(); która odpowiada za ustawienie wartości currentUser.
0
epi
@DrizztDoUrden: http.get() robi przecież jeden request tylko i już ;)

chciałbyś, żeby w real-time pobierała nowe wartości z serwera?
to obczaj websockety albo odpytuj w pętli
aczkolwiek druga opcja to bardziej taki drut :P
0
DrizztDoUrden
DrizztDoUrden
@epi: Nie nie, ta wartość to aktualny user także jest to dość stałe :)

Aktualnie wygląda to tak: https://pastebin.com/LUJFtBtt Wszędzie binduje w taki sposób jak tutaj dla userCurrent i działa :/ A tutaj nie odświeża mi wartości na widoku, mimo że wartość userCurrent w danym momencie jest ustawiona poprawnie.
0
epi
@DrizztDoUrden: w tym kodzie nigdzie nie aktualizujesz userCurrent
wszedzie tylko przypisania do currentUser

do tego tutaj:

this.authService.getCurrentUserInfo().subscribe(data
0
epi
@DrizztDoUrden: w ogóle sprawdź sobie co tam siedzi na widoku

{{(currentUser | async) | json}}
od biedy możesz spróbowac wsadzić przypisanie do ngZone albo wymusić change detection za pomocą ChangeDetectionRef, jeśli jesteś pewien, ze dane są dobre, tylko na widoku się nie odświeżają
0
DrizztDoUrden
DrizztDoUrden
@epi: Nadal nic z tego :/ Poszedłem teraz zgodnie z jakimś przykładem z dokumentacji, do bindowania propert między serwisem a komponentami: https://pastebin.com/ZsKbyNQK

Jednak tutaj mam taki problem:

ERROR TypeError: this.currentUser.next is not a
0
DrizztDoUrden
DrizztDoUrden
@epi: Co ciekawe, wywaliłem te metodę z onInit i zaczeło działać poprawnie, mimo tego że wywala cały czas błąd z next ( ͡° ͜ʖ ͡°)
0
DrizztDoUrden
DrizztDoUrden
Dla potomnych, zostawiam instrukcję bindowania property komponentu z propertą serwisu :) https://pastebin.com/jmNdqj5K
0