TypeScript'te ek özelliklere sahip bir fonksiyonu nasıl tanımlayabilir/tipini belirleyebilirim?
JavaScript'te, şöyle bir şey yapabilirim:
function hello() { console.log('Hello')}
hello.rating = "super useful"
Yani bu hello fonksiyonu artık "özelleşmiş" durumda, çünkü bunun ek bir özelliği olan rating var.
Böyle bir fonksiyon TypeScript'te nasıl ilan edilir?
Biliyorum, typeof'u kullanabilirim, ama kullanmak istediğim bu değil.
İşte bir oyun alanı:
https://www.typescriptlang.org/play?#code/GYVwdgxgLglg9mABACwKYBt1wBQEpEDeAUIokQL5FqZwB0ATgIYxhSIC8iARAM4gAOqelyKioAT0GIAGh0QTBcYCgxZREBDzbiAXLM54OAPkLkgA
Cevap #1
Çağrı imzalarını arıyorsunuz.
Böyle bir şey yapabilirsiniz:
type UberFunctionObject = {
rating: string
(): void
}
Ana fikir, aslında bir nesne için bir tür tanımlamanız ve ardından o nesnenin bir fonksiyon olarak nasıl çağrılabileceğinin türü(nü) belirtmenizdir.
