0
私たちのためにコンストラクタ関数を作成するライブラリがあります。 最初のパラメータとしてObjectを渡すことができ、このプロパティはコンストラクタ関数に直接追加されます。 let bar = new Tiger('foo', 'bar')
コンストラクタ関数の型定義とコンストラクタ関数のプロパティ
Tiger.leg = 4
二意志を変更するインスタンスを作成し
- :私たちは今、2の可能性を持っている
let Tiger = can.Construct.extend({ leg: 3 });
:よう
この例では見ることができます投げる私が代わりにタイプ
any
を返す場合declare namespace can { interface ConstructFactory { new(...args: any[]): Construct; } class ConstructStatic { static extend(staticProperties: Object): ConstructFactory; } class Construct extends ConstructStatic { constructor(...args: any[]); } }
:私の現在のタイプdefinitiosとエラー
プロパティ「脚」タイプのConstructFactoryに出
私の現在の型定義は次のようになりますしません。
ConstructFactory
の場合、Tiger.leg
はエラーをスローしませんが、コンストラクターの定義が失われたため、インスタンスを作成できません。- typescriptですがplaygroud link
- jsbin example for the constructor function class
: 'インタフェースConstructFactoryを { new(... args:任意の[]):コンストラクト& T; } ' –