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">

Relaterade artiklar