Angular pokazywanie danych w czasie rzeczywistym

Angular pokazywanie danych w czasie rzeczywistym
MI
  • Rejestracja:prawie 7 lat
  • Ostatnio:prawie 5 lat
  • Postów:32
0

Mam rest w który dane zmienia ją się co 30 sekund. Chce zmiany pokazywać na bieŻąco (Boże, widzisz takie błędy i nie grzmisz).
Service

Kopiuj
import {HttpClient} from "@angular/common/http";
import {Observable} from "rxjs";
import {Currencies} from "../model/currencies";

@Injectable({
  providedIn: 'root'
})
export class ExchangeRateService {

   baseUrl :string ="http://localhost:8180";
  constructor(private  http:HttpClient) { }
  getCurrencies() : Observable<Currencies> {
    return this.http.get<Currencies>( this.baseUrl);
  }
}

Component

Kopiuj
import {Component, Input, OnInit} from '@angular/core';
import {ExchangeRateService} from "../services/exchange-rate.service";
import {Observable} from "rxjs";
import {Currencies} from "../model/currencies";

@Component({
  selector: 'app-exchange-rate',
  templateUrl: './exchange-rate.component.html',
  styleUrls: ['./exchange-rate.component.css']
})
export class ExchangeRateComponent implements OnInit {
  currencies$: Observable<Currencies>;
  constructor(private exchangeRateService:ExchangeRateService) { }

  ngOnInit() {

    this.currencies$ = this.exchangeRateService.getCurrencies();
  }

}

html

Kopiuj
<div  class="col-md-7">{{currencies$.publicationDate |async}}</div>// wyświetla błąd 
<div *ngFor="let c of currencies$.items | async" class="col-md-7">// wyświetla błąd 
<ul class="list-group">
 <li class="list-group-item">Author: {{c.id}}</li>
 <li class="list-group-item">Comments: {{c.description}}</li>
</ul>

model

Kopiuj
import {Currency} from "./currency";

export class Currencies {
  public publicationDate; string ;
  public items:Currency[];
}

export class Currency {

public name:string ;
public code:string ;
public unit:number;
public purchasePrice:number;
public sellPrice:number;
public averagePrice:number;
}

Nie wiem jak dostać do zmiennej currencies$.publicationDate >// wyświetla błąd
currencies$.items // wyświetla błąd
Jak dostać się do Observable currencies$.publicationDate w przykładach, które widziałem ad razu literowali i wyświetlali niestety ja mam trochę inna strukturę modelu

Delor
  • Rejestracja:ponad 6 lat
  • Ostatnio:około 2 lata
0

Podasz co to za błąd?
I czemu w model masz średnik zamiast dwukropka?

Kopiuj
 public publicationDate; string ;
MI
  • Rejestracja:prawie 7 lat
  • Ostatnio:prawie 5 lat
  • Postów:32
0

Poprawiłem ale dalej mam na czerwono validator nie widzi tego pola jeśli chce dostać się do pola currencies$.publicationDate. c

VE
  • Rejestracja:około 9 lat
  • Ostatnio:około 2 godziny
  • Postów:160
0
Kopiuj
{{currencies$.publicationDate |async}}

zamień na

Kopiuj
{{(currencies$ | async).publicationDate}} 

i to niżej tez w taki sam sposób

edytowany 2x, ostatnio: Veox

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.