我正在使用一个 javascript 库(具体来说是 pixi.js),并且我正在尝试在 typescript 中扩展他们的一个类。但是,尝试像下面这样扩展类会产生错误。
module tilesystem {
declare var PIXI;
// Class
export class Tilegrid PIXI.DisplayObjectContainer
{
public layers : number= layers;
public rows : number= rows;
public columns : number = columns;
public tilesize : number = tilesize;
// Constructor
constructor(layers, columns, rows, tilesize, stage, texture)
{
super( );
//implementation
}
}
//Tilegrid.constructor = Tilegrid;
Tilegrid.prototype = Object.create(PIXI.DisplayObjectContainer.prototype);
}
错误 :
基本类型“任何”缺少实现。
我可以用丑陋的javascript方式扩展它,但是它仍然会抱怨不知道它是超级方法。
module tilesystem {
declare var PIXI;
// Class
export class Tilegrid
{
public layers : number= layers;
public rows : number= rows;
public columns : number = columns;
public tilesize : number = tilesize;
// Constructor
constructor(layers, columns, rows, tilesize, stage, texture)
{
**PIXI.DisplayObjectContainer.call(this);**
*this.addChild( new Tile() );* //throws an error, because addChild is not known
}
}
**Tilegrid.prototype = Object.create(PIXI.DisplayObjectContainer.prototype);**
}
如何在 TypeScript 中扩展原生 JavaScript 数组 我知道这个 anwser 建议使用接口,但我真的很想阻止编写包装器。我宁愿找到一种方法来在使用超级方法时抑制错误,或者以某种方式从 javascript 类中获取类型信息。