Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Automatyczne aktualizowanie danych z serwera na stronie
#1
Witam,

Pracuję nad projektem strony, w którym chcę odczytywać dane za pośrednictwem zapytania http. Funkcja, którą zastosowałem poprawnie pobiera mi wartość zmiennej i wyświetla ją na stronie:

Kod:
todoApp.run(function ($http){
  $http.get("/cgi-bin/readVal.exe?var1").success(function (data){
  model.years = data;
});


Wartość zmiennej pobierana z tego zapytania zmienia się w czasie. Wartość zmiennej wyświetlam w widoku poprzez prostą składnię:

Kod:
<h1>Rejestr 100 = {{todo.years}} </h1>


Problem polega na tym, że wartość pobierana jest tylko raz podczas ładowania strony. Ręczne odświeżenie strony aktualizuje tą wartość. Ja chciałbym zrobić taką funkcjonalność, by ta wartość była uaktualniana automatycznie, co określony czas.

Czy ktoś spotkał się z podobnym problemem i może ma pomysł jak to rozwiązać?

Pozdrawiam.
Odpowiedz
#2
Ja właśnie mam ten sam problem i nie wiem jak go rozwiązać, mam nadzieję że ktoś na tym forum pomoże nam.
Odpowiedz
#3
(28-03-2016, 03:47)Znawca55 napisał(a): Ja właśnie mam ten sam problem i nie wiem jak go rozwiązać, mam nadzieję że ktoś na tym forum pomoże nam.

Hej,

Znalazłem rozwiązanie problemu. Wystarczy w funkcjach kontrolera wykorzystać funkcję $interval:

Kod:
todoApp.controller("ToDoCtrl", function ($scope, $interval, $http) {
    $scope.data={}
    $scope.getData = function(){
         $http.get("10.10.10.45/cgi-bin/readVal.exe?ver1").success(function (data){model.years = data;});
         console.log('Fetched data!');}
    setInterval($scope.getData, 3000);});

Potem w treści strony odwołujesz się do tego klasycznie:

Kod:
<h1>Zmienna: {{todo.years}} </h1>

Oczywiście w funkcji setInterval parametr 3000 oznacza 3000ms.
Pozdrawiam
Odpowiedz
#4
Brawo za rozwiązanie, sam bym się nie połapał
Odpowiedz
#5
Myślę, że nie tylko Ty.
Odpowiedz
#6
No co za dużo kodu to nie idzie się połapac .
Odpowiedz
#7
(30-03-2016, 13:38)Boguś777 napisał(a): No co za dużo kodu to nie idzie się połapac .

Czegoś nie rozumiesz w tym rozwiązaniu? Chętnie wyjaśnię Smile
Odpowiedz
#8
Właśnie, przecież to jest zrozumiałe
Odpowiedz
#9
No jeden zrozumie a drugi nie
Odpowiedz
#10
Dokładnie, nie ma co drążyć tematu. Temat uważam za zaamknięty.
Odpowiedz


Podobne wątki…
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
  Tło header na stronie starej jak świat michalecpp 4 5,440 21-06-2016, 15:45
Ostatni post: webminister
  Nie działają skrypty java na stronie. dymek3r 11 9,450 03-07-2013, 14:38
Ostatni post: Kartofelek
  Problem z galerią na stronie [email protected] 4 4,524 18-03-2013, 16:37
Ostatni post: [email protected]
  Wysuwany likebox facebooka po prawej stronie. kingu80 2 3,001 20-01-2013, 17:50
Ostatni post: Kartofelek
  [CSS] cała treść wyświetlana po lewej stronie w ie haraldsson 3 3,901 22-12-2012, 02:35
Ostatni post: haraldsson

Skocz do:


Użytkownicy przeglądający ten wątek: 1 gości
Sponsorzy i przyjaciele
SeoHost.pl