【问题标题】:Typescript Error Putting Classes in Separate Files打字稿错误将类放在单独的文件中
【发布时间】:2016-02-16 06:34:11
【问题描述】:

我觉得这是我正在犯的一个非常基本的错误,但我无法在任何地方找到解决方案。我有两个班,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 文件中时,它工作正常,但是当我将它们分解时,一切都崩溃了。我错过了什么吗?

【问题讨论】:

    标签: javascript oop typescript typeerror


    【解决方案1】:

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

    包含生成的js文件的顺序很重要。这就是为什么你最好使用tsconfig.json并在你的html中包含一个生成的js文件(你可以使用source-maps来调试TypeScript代码)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-09-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多