文件配置
文件选项
files
files
指定一个包含相对或绝对文件路径的列表,列举在files
中的所有文件,编译器在编译时都会将它们包含在内。
// tsconfig.json
"files": [
"src/core.ts",
"src/index.ts",
]
当配置文件中的files
字段值如上所示时,使用tsc
命令编译时,src
目录下的core.ts
和index.ts
文件会被编译为core.js
和index.js
文件。
include
include
指定编译的文件或目录,include
是支持使用通配符来匹配路径名,支持的通配符及其功能如下表所示:
通配符 | 功能 |
---|---|
* | 匹配0 或多个字符,但是不匹配"."开头的隐藏文件和目录分隔符(/ or \ ) |
? | 匹配一个任意字符,但是不匹配目录分隔符 |
** | 匹配0 或多个字符,包括斜杠(这意味着可以匹配多个目录) |
例如,编译src
下所有文件:
"include": [
"src",
]
只编译src
二级目录下的文件:
"include": [
"src/*/*",
]
当tsconfig.json
文件同时配置了files
和 include
字段时,编译器会将它们进行合并。当files
和 include
中配置的的文件所引用的文件不在其中时,被引用的文件也会被包含进来。
exclude
exclude
指定编译时排除的文件或目录,exclude
的用法与include
相同。
当没有配置files
和 include
字段时,编译器会默认编译当前目录和子目录下所有的ts
文件(.ts
, .d.ts
和 .tsx
),排除在exclude
里配置的文件。而当设置了files
和 include
字段时,可以通过exclude
字段过滤include
的文件。
caution
需要注意的是:通过 files
属性明确指定的文件却总是会被编译,不管exclude
如何配置。
此外,exclude
默认情况下会排除node_modules
,bower_components
,jspm_packages
和输出目录。