私はlibmarkov
をnpmから使用したいTypeScriptプロジェクトを持っています。 Generatorと呼ばれるES6でインポート可能なクラスを提供します。 new Generator('some text')
で使用します。私の地元のプロジェクトでTypescript定義、ES6クラス、およびコンストラクタ
、私はファイルtypedefs/libmarkov.d.ts
作成:私はそれをインストールするtypings
を使用
export class Generator {
constructor(text: string);
generate(depth: number);
}
を:typings install --save file:./typedefs/libmarkov.d.ts
しかし、この:let generator = new Generator('Foo Bar Baz');
が...このコンパイラエラーを生成し、 :
Error:(5, 21) TS2351: Cannot use 'new' with an expression whose type lacks a call or construct signature.
私は自分のコンストラクタを変更することができます:constructor(text: string) {};
を...しかし、これは与える:
Error:(2, 31) TS1183: An implementation cannot be declared in ambient contexts.
それが重要ならば、私はTS 2.0をターゲットにしています。
は私がexport' 'と交換した場合、私はまだnew''についてのエラーを取得する '' declare' –
とexport'を交換してくださいだろう。 ''コンストラクタ 'の最後に' {} 'を追加すると' new'というエラーが出ますが、 'エラー:(2、31)TS1183:実装は環境コンテキストで宣言できません。 –