angular - Elementet har implicit typen 'any' eftersom uttrycket av typ... används när man använder en funktion som kräver typ string
Jag gör en Angular-applikation med Express-backend. Backend ger mig ett svar som detta
console.log(res) -->
{
"ok": true,
"msg": "Login ok",
"auth": "xxxxxxxxxxxx"
}
Nu när jag har mitt svar försöker jag spara det i localStorage
localStorage.setItem('auth', res['auth']); //also tried res.get('auth');
Men setItem tar emot en sträng som första element, och sträng som andra element och jag får hela tiden följande fel:
Element har implicit typen 'any' eftersom uttryck av typen "auth" inte kan användas för att indexera typen "Object".
Svar #1
Du kan skapa ett gränssnitt och ställa in din backend-svarstyp till det på följande sätt :
export interface BackEndResponse{
ok: boolean;
message: string;
auth: string;
}
Jag vet inte hur du frågar din backend men här är ett exempel på att prenumerera på metoden som gör förfrågan och returnerar objektet som en observerbar.
setLocalStorage(): void {
this.yourBackEndService.getBackEndInfo().subscribe((backEndResponse) => {
localStorage.setItem('auth', backEndResponse.auth);
// ...
});
}
