angular - Egenskapen finns inte på typen 'never' - på ngFor-variabeln
När jag försöker få svar från API:et använder jag en ngFor för att dynamiskt sortera min vy. Här är kodraden:
<agm-marker *ngFor="let httpResponses of response" [latitude]= "httpResponses.lat" [longitude]="httpResponses.lng"
[agmFitBounds]="true">
För att vara tydligare:
... *ngFor="let httpResponses of response" [latitude]= "httpResponses.lat" [longitude]="httpResponses.lng" ...
och det ger automatiskt typen av httpResponses som never. Och på grund av det ger det dessa fel nedan:
fel TS2339: Egenskapen 'lng' existerar inte på typen 'never'.
fel TS2339: Egenskapen 'lat' existerar inte på typen 'never'.
Kan jag deklarera någon Typescript-typ på httpResponse i Html-filen? Projektet fungerar bra, jag får lat- och lng-värden från httpResponses och visar dem, men jag får ändå ständigt dessa fel. Jag försökte deklarera typ på httpResponses i component.ts-filen, det ändrade ingenting.
Tack för alla råd.
Svar #1
Du bör använda klammernotation istället för punktnotation för att komma åt egenskap:
<agm-marker *ngFor="let httpResponses of response" [latitude]= "httpResponses['lat']" [longitude]="httpResponses['lng']"
[agmFitBounds]="true">
