TypeScript'te "Bileşik tür"
TypeScript'te bir tipin hem başka bir tipin özelliklerinden hem de kendi özelliklerinden oluşabileceği bir özellik gördüğümü hatırlıyorum. Ama doğru hatırlayıp hatırlamadığımdan emin değilim. Şunu göz önünde bulundurun:
// type or interface
type X = {
a: number
};
// type or interface
// composes properties from X ???
type XPlus = {
[P: keyof X], // include properties from X
b: boolean // add a new property
};
// instance includes properties from both X and XPlus
const instance: XPlus = {
a: 100,
b: false
};
Bu çalışıyor gibi görünüyor, ancak bunun düşündüğüm şeyi yapıp yapmadığından emin değilim. Böyle bir özellik var mı ve varsa adı nedir?
Cevap #1
Bir kesişim türünü kullanabilirsiniz
// type or interface
type X = {
a: number
};
type XPlus = X & {
b: boolean // add a new property
};
// instance includes properties from both X and XPlus
const instance: XPlus = {
a: 100,
b: false
};
