既存の JavaScript オブジェクトがあります。TypeScript で型として使用したいのですが、それを行う方法がわかりません。たとえば、次のような JavaScript オブジェクト コンストラクターがあります。
function Canvas2D(canvas)
{
var context = canvas.getContext("2d");
this.clear = function() { context.clearRect(canvas.width, canvas.height); }
// lots more methods follow...
}
私の TypeScript では、Canvas2D のインスタンスである変数を宣言したいと考えています。タイプ「any」として定義することもできますが、それでは自動提案が得られず、TypeScript を使用する利点が否定されます。
class MyApp
{
private canvas2d: any;
// I want this instead
//private canvas2d: Canvas2D;
constructor(aCanvas) { this.canvas2d = new Canvas2D(aCanvas); }
}
TypeScriptでこれを行う方法はありますか?
JavaScript では、次のようにできます。
var canvas2D = new Canvas2D(aCanvas);
そして、それ (Visual Studio) は、処理しているオブジェクトの種類を認識します。