I TypeScript, hur deklarerar jag en funktion som returnerar en array av typen string?
Möjliga dubbletter:
I TypeScript, hur deklarerar jag en array av funktioner som tar en sträng och returnerar en sträng?: I detta inlägg pratar användaren om att returnera en strängarray från en funktion med hjälp av lambda-uttryck.
Hur man deklarerar returtyper för funktioner i TypeScript: I det här inlägget pratar användaren om (hur jag kan deklarera en returtyp för funktionen) som nämnts i hans inlägg.
Båda länkarna ovan är inte möjliga duplicat till min fråga. Så låt oss börja.
Vad jag förväntade mig i min kod: En funktion som returnerar en strängarray, till exempel public _citiesData: string[];.
Jag har en TypeScript-klassdefinition som börjar så här:
export class AppStartupData {
public _citiesData: string[];
constructor() {
this.citiesData();
}
citiesData():string[] {
return this._citiesData.push('18-HAZARI','A.K','ABBOTABAD');
}
}
Jag får ett fel när jag bygger min kod:
Typen 'number' kan inte tilldelas typen 'string[]'
Svar #1
Ditt fel beror på att du returnerar värdet från push-metoden.
Push-metoden returnerar den nya längden på arrayen och därför försöker den konvertera ett nummer till en array av strängar.
Så, det du bör göra är detta:
citiesData():string[] {
this._citiesData.push('18-HAZARI','A.K','ABBOTABAD');
return this._citiesData;
}
