Bize göre bir yapıcı işlevi oluşturan bir kütüphanemiz olduğunu söyleyelim. Bir Nesneyi ilk parametre olarak iletebilir ve bu özellikler yapıcı işlevine doğrudan eklenir. let bar = new Tiger('foo', 'bar')
tür tanımı
Tiger.leg = 4
ikinci irade değiştirmek örneği oluşturmak
- : Şimdi 2 olasılık var
let Tiger = can.Construct.extend({ leg: 3 });
: gibi
bu örnek bakabilirsiniz atmak benim şimdiki tip definitios ile hata
Property 'bacak' türü ConstructFactory değil çıkış
benim şimdiki tip tanımı gibi görünüyor bunu
:
declare namespace can { interface ConstructFactory { new(...args: any[]): Construct; } class ConstructStatic { static extend(staticProperties: Object): ConstructFactory; } class Construct extends ConstructStatic { constructor(...args: any[]); } }
i yerine bir tür
any
dönersenizConstructFactory
Tiger.leg
hata atmayacak, ancak kurucu tanımı kaybolduğundan şimdi bir örnek oluşturamıyorum.- typescript playgroud link
- jsbin example for the constructor function class
: 'arayüz ConstructFactory { yeni (... args: any []):Construct } ' –