javascript - Hur man inline-desktruerar nästlade valfria egenskaper från ett objekt i Typescript?
Jag har följande kod av en typ User som har en valfri typ Address som jag vill destrukturera på en rad. Men när jag försöker får jag ett felmeddelande som säger:
Egenskapen 'street' finns inte på typen 'Address | undefined'
Klicka här för att se Typescript-lekplatsen för koden som tillhandahålls nedan
type User = {
age: number;
address?: Address;
}
type Address = {
street?: string;
}
const user: User = {
age: 22,
address: {}
}
const {age, address: {street}} = user
Här existerar inte street på typen Address | undefined
Svar #1
Du behöver initialisera address i din const.
Så här:
const {age, address : {street} = {}} = user;
PlaygroundLink
