1

Typescript 1.5添加了对tsconfig.json配置文件的支持,可以在其中指定诸如编译器选项之类的内容。

这是宣布 1.5 的博客文章中的一句俏皮话:

编译器现在支持“tsconfig.json”,这是一个允许您指定项目中的文件和要使用的编译器设置的新文件。

这让我认为--module不再需要将标志添加到编译器。但是试图编译一个导出类的简单文件我得到了这个:

tsctest.ts(1,14): error TS1148: Cannot compile modules unless the '--module' flag is provided.

当一切正常运行tsc时。--module commonjs

这是 ts 文件:

//tsctest.ts
export class Empty {
}

这是tsconfig.json

{
        "compilerOptions": {
                "target": "ES5",
                "module": "commonjs"
        }
}

我的 Typescript 版本是 1.5.3,tsctest.ts并且tsconfig.json位于同一个文件夹中。

4

2 回答 2

4

TypeScript 提供了两种使用模块的方法 1. 内部模块 2. 外部模块

虽然第一个选项通常用于在不同的 .ts 文件之间拆分 TypeScript 模块(通过它可以在同一模块中的其他 .ts 文件中使用 .ts 模块的组件,而无需任何显式的 import 语句),第二个选项用于显式导入通常从可用库中导入的模块。它是外部模块,您必须为其提供带有模块参数的 TypeScript 编译器。

因此,在您的代码中,您使用的导出语法用于第一个选项(内部模块),您必须将代码放入模块块中。

您可以参考文档

编辑本文解决了使用模块时出现的常见疑问。

于 2015-10-26T14:20:14.783 回答
1

根据文档

在命令行上指定输入文件时,将忽略 tsconfig.json 文件。

在不指定任何输入文件的情况下运行tsc,它将正常工作。

于 2015-08-25T14:02:44.230 回答