我看到了类似的问题:
Cross referencing with extended classes in TypeScipt
虽然我还无法弄清楚到底出了什么问题。我的问题是我有一个类游戏对象,我想扩展,但只要存在游戏对象的精灵类存在我得到一个错误
module Game {
export class GameObject {
x = 0;
y = 0;
W = 0;
H = 0;
img = new Image();
scale = 0;
constructor(img, x, y, w, h, scale?) {
this.img = img;
this.x = x || 0;
this.y = y || 0;
this.W = w;
this.H = h;
this.scale = scale || 1;
}
update() {
}
render(context, x, y) {
context.drawImage(this.img, this.x, this.y, this.W, this.H, x, y, this.W * this.scale, this.H * this.scale);
}
}
}
module Game {
export class Sprite extends GameObject {
}
}
我收到以下错误:
未捕获的TypeError:无法读取属性'原型'未定义的
未捕获的TypeError:undefined不是函数
根据顶部的帖子,看起来我有一个循环依赖,它出于某种原因首先调用精灵类?
提前致谢。
答案 0 :(得分:12)
我发现错误,显然当你将打字稿代码输出到一个javascript文件时,你无法正常扩展文件,所以你必须使用这样的///引用:
///<reference path='gameobject.ts' />
module Game {
export class Sprite extends GameObject {
}
}
发布信息: