Typescript和NodeJS:ReferenceError:模块没有定义

我使用Typescript模板为Visual Studio( http://nodejstools.codeplex.com/ )提供了一个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 

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

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

您需要在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模块系统,这个typescript支持通过它的“外部”模块特性和一个编译器arg --module commonjs