我觉得这是我犯的一个非常基本的错误,但我无法在任何地方找到解决方案。我有两个班,Moo.ts:
module namespace {
export class Moo{
constructor() {
// window.console.log("hello from Moo");
var foo:Foo = new Foo();
}
}
和Foo.ts:
module namespace {
export class Foo{
constructor() {
// window.console.log("hello from Foo");
}
}
当运行Moo.ts时,我希望它能成为Foo的一个实例,但事实并非如此。它给出了这个错误:
TypeError:namespace.Foo不是构造函数
当我将两个类放在同一个ts文件中时它工作正常,但是当我将它们分解时,一切都崩溃了。我错过了什么吗?
答案 0 :(得分:1)
您可能在count
之后的html中包含了Foo.js
(生成的文件),这意味着当Moo.js
运行时(因为它是第一个js文件)它找不到的 namespace.Foo 强>
包含生成的js文件的顺序很重要。这就是为什么你最好使用tsconfig.json并在你的html中包含一个生成的js文件(你可以使用source-maps来调试TypeScript代码)