Typescript 来自类型脚本的Javascript错误=>;未捕获类型错误:未定义不是函数

Typescript 来自类型脚本的Javascript错误=>;未捕获类型错误:未定义不是函数,typescript,Typescript,我在game.js文件(来自game.ts编译)的顶部得到以下定义语句: 这个错误:uncaughttypeerror:undefined不是一个函数 从本页: <head> <title>Space Demo</title> <link href="/stylesheets/screen.css" media="all" rel="stylesheet" type="text/css" /> <scrip

我在game.js文件(来自game.ts编译)的顶部得到以下定义语句:

这个错误:uncaughttypeerror:undefined不是一个函数

从本页:

    <head>
    <title>Space Demo</title>
    <link href="/stylesheets/screen.css" media="all" rel="stylesheet" type="text/css" />


    <script language="javascript" src="javascripts/require.js" type="text/javascript" data-main="ts/game.js"> </script>
    <script language="javascript" src="javascripts/jquery-1.8.2.min.js" type="text/javascript"> </script>

</head>

太空演示
有什么想法吗

编辑

game类位于game.js文件中

班级游戏{

//  canvas: JQuery;

CANVAS_WIDTH: number = 400;
CANVAS_HEIGHT: number = 400;

FPS: number = 30;

enemies = [];
playerBullets: Array = new Array[40];
player: GameObjects.GameObjects.Player;


canvas: HTMLCanvasElement = <HTMLCanvasElement> document.getElementById('canvas');

context2D: CanvasRenderingContext2D;

constructor () {
    // this.canvas = canvas;

    this.context2D = this.canvas.getContext("2d");
    this.canvas.width = this.CANVAS_WIDTH;
    this.canvas.height = this.CANVAS_HEIGHT;

    this.initGame();
}
//canvas:JQuery;
画布宽度:数字=400;
画布高度:数字=400;
FPS:数量=30;
敌人=[];
playerBullets:数组=新数组[40];
玩家:GameObjects.GameObjects.player;
canvas:htmlcanvaseElement=document.getElementById('canvas');
context2D:CanvasRenderingContext2D;
构造函数(){
//this.canvas=画布;
this.context2D=this.canvas.getContext(“2d”);
this.canvas.width=this.canvas\u width;
this.canvas.height=this.canvas\u height;
这个.initGame();
}

您试图调用的某个函数未定义/初始化

  • 您正在构建的
    游戏
    类是否可以从那里访问
  • 带有
    ID=“canvas”
    的元素是
    -元素吗
  • Game
    类是否有
    initGame
    方法

如果您使用Google Chrome打开页面,并在开发者控制台中查看,您会看到一个堆栈跟踪。这会告诉您错误的来源。

对不起,它在game.ts文件中
//  canvas: JQuery;

CANVAS_WIDTH: number = 400;
CANVAS_HEIGHT: number = 400;

FPS: number = 30;

enemies = [];
playerBullets: Array = new Array[40];
player: GameObjects.GameObjects.Player;


canvas: HTMLCanvasElement = <HTMLCanvasElement> document.getElementById('canvas');

context2D: CanvasRenderingContext2D;

constructor () {
    // this.canvas = canvas;

    this.context2D = this.canvas.getContext("2d");
    this.canvas.width = this.CANVAS_WIDTH;
    this.canvas.height = this.CANVAS_HEIGHT;

    this.initGame();
}