我的Visual Studio 2015年社区Node.js的+工具 我已经创建了“空白Node.js的控制台应用程序”打字稿项目我的名字空间没有定义。打字稿
我已经增加了一个打字稿文件,TypeScript1.ts并提出以下几点:
module MyModule {
export class Calculator {
add(x: number, y: number): number {
return x + y;
};
constructor() { }
}
}
在主文件,app.ts我把这个:
/// <reference path="TypeScript1.ts" />
console.log('Hello world');
var subject: MyModule.Calculator;
subject = new MyModule.Calculator();
var result: number = subject.add(2, 3);
console.log(result);
它建立没有问题,但是当我尝试调试/运行,它指出:
ReferenceError: MyModule is not defined
at Object.<anonymous> (C:\Users\User\Documents\Visual Studio 2015\Projects\NodejsConsoleApp1\NodejsConsoleApp1\app.js:8:15)
我该怎么做?
感谢您回答Martin.app.js不包含它实际上,我不需要运行这个文件,我尝试使用Mocha测试TypeScript1.ts文件并获得了同样的错误为什么我的app.js不包含TypeScript1的代码? –
嗯,这是因为TS编译器假定你要么使用内部模块es,在这种情况下,'///'注释仅用于从由'--outFile'参数指定的最终文件中的'.ts'文件中正确地命令脚本。或者,您可以根据需要使用“输入”模块的外部模块。 (有用的资源http://www.typescriptlang.org/Handbook#modules-splitting-across-files) –
谢谢,我在发布问题之前阅读了这篇文章,尽管我完全理解它是相当尴尬的。对我来说是内部还是外部?所有文件都在单个项目中。我如何才能实现自动构建Mocha测试以测试TypeScript1.ts? –