Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将类放在单独的文件中时发生Typescript错误_Javascript_Oop_Typescript_Typeerror - Fatal编程技术网

Javascript 将类放在单独的文件中时发生Typescript错误

Javascript 将类放在单独的文件中时发生Typescript错误,javascript,oop,typescript,typeerror,Javascript,Oop,Typescript,Typeerror,我觉得这是我犯的一个基本错误,但我在任何地方都找不到解决办法。我有两门课,模拟课: module namespace { export class Moo{ constructor() { // window.console.log("hello from Moo"); var foo:Foo = new Foo(); } } 和Foo.ts: module namespace { export class Foo{ constru

我觉得这是我犯的一个基本错误,但我在任何地方都找不到解决办法。我有两门课,模拟课:

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:命名空间.Foo不是构造函数


当我把这两个类放在同一个ts文件中时,它工作得很好,但是当我把它们分开时,一切都会分崩离析。我遗漏了什么吗?

您可能在
Moo.js
之后在html中包含了
Foo.js
(生成的文件),这意味着当
Moo.js
运行时(因为它是第一个js文件),它没有找到namespace.Foo

包含生成的js文件的顺序很重要。这就是为什么您最好使用并在html中包含一个生成的js文件(您可以使用源映射来调试TypeScript代码)