Compiler construction TypeScript编译错误TS5037:无法编译外部模块,除非'--模块';提供旗帜

Compiler construction TypeScript编译错误TS5037:无法编译外部模块,除非'--模块';提供旗帜,compiler-construction,typescript,Compiler Construction,Typescript,无法编译任何TS+node.js项目,包括示例中列出的项目 始终获取以下错误: 错误TS5037:除非提供“--module”标志,否则无法编译外部模块 编译器版本:0.9.1.0 例如,该项目仅由单个文件app.ts组成: 如上所述,使用模块标志编译,例如,如果您的文件名为myfile.ts: tsc myfile.ts --module "commonjs" 原因是从TSC 0.9.1开始,默认的模块选项是amd(例如requirejs),这是客户端javascript代码最常见的模块

无法编译任何TS+node.js项目,包括示例中列出的项目

始终获取以下错误:

错误TS5037:除非提供“--module”标志,否则无法编译外部模块

编译器版本:0.9.1.0

例如,该项目仅由单个文件app.ts组成:



如上所述,使用模块标志编译,例如,如果您的文件名为
myfile.ts

tsc myfile.ts --module "commonjs" 
原因是从TSC 0.9.1开始,默认的模块选项是amd(例如requirejs),这是客户端javascript代码最常见的模块模式。因此,您需要指定模块选项以获取commonjs代码,这是服务器端javascript代码(例如nodejs)最常见的模块模式,这就是编译器提示您明确目标的原因:)当您在外部模块上执行
导入时,会出现此提示

也只是补充一下


我正在使用Visual Studio 2013,运行build修复时遇到了相同的错误。我转到了我的项目的属性,然后转到了“TypeScript构建”部分,其中有一个选项可以选择我选择的模块系统,但它没有。在GraphQL示例中,我使用了create-react-app-myapp-TypeScript,遇到了类似的问题

TS1208

我们可以这样修复它:


非常感谢,成功了!我也有“无”,这是完美的工作,谢谢你。不过,我还想补充一点,如果您没有让Typescript知道您的外部模块,您仍然可以看到不同的错误。类似这样:
declare module'angular'{var angular:ng.IAngularStatic;export=angular;}
。现在,我开始怀疑这是否是一个VS2015错误。
tsc myfile.ts --module "commonjs"