Typescript and NodeJS : ReferenceError : Module is not defined

Typescript and NodeJS : ReferenceError : Module is not defined

我正在使用用于 Visual Studio (http://nodejstools.codeplex.com/) 的 NodeJS 工具和 Typescript 模板制作一个 NodeJs 控制台应用程序。

这里基本上是我的代码:

app.ts :

/// <reference path="Module/Module.ts" />
var foo = new Module.ModuleClass();
foo.foo();

Module/Module.ts :

module Module {
    export class ModuleClass {
       foo() {
        console.log('Hello World');
       }
   }
}

编译器运行没有问题,但是在运行时候,NodeJS找不到模块。这是错误:

var foo = new Module.ModuleClass();
              ^
ReferenceError : Module is not defined

关于这个问题我已经厌倦了很多事情(使用或不使用 /// 但我找不到任何解决方案。

请原谅我的英语,我不是母语人士。 提前致谢!

您需要在 Module/Module.ts

中导出 Module
export module Module { ...

在app.ts中,您需要require('./Module/Module')

import M = require('./Module/Module');
var foo = new M.Module.ModuleClass();
foo.foo();

你需要这样做,因为这个 node.js 使用 commonjs 模块系统,打字稿通过其 "external" 模块功能和编译器参数 --module commonjs

支持该系统