如何在tsconfig.json中排除以'.spec.ts'结尾的文件

BBa*_*ger 5 javascript json typescript angular

我试图在我的tsconfig.json中包含一些文件,但它包含我不想包含的文件.(我看到在搜索语法使用,随处可见的星号,但我不知道这句法是什么,在哪里可以更多地了解它.)从回购(有未编译源)我想包括结束的文件.ts,除了那些结束的.spec.ts.

以下包括我想要的文件,但没有成功排除我不想要的文件.

  "include": ["node_modules/dashboard/**/*.ts"],
  "exclude": ["node_modules/dashboard/**/*.spec.ts"],
Run Code Online (Sandbox Code Playgroud)

如何排除这些文件?

编辑:起初是使用**/**.ts**/**.spec.ts.这是不正确的,但现在我已经纠正了,我遇到了同样的问题.

Fen*_*ton 16

打字稿手册对tsconfig文件的好写了.

手册中的例子是:

"exclude": [
    "node_modules",
    "**/*.spec.ts"
]
Run Code Online (Sandbox Code Playgroud)

请注意,**对于任何文件夹,使用*(单个星号)作为文件名通配符.

您通常不需要更具体,因为我想你想要排除"所有规范文件",而不仅仅是特定子目录中的文件.

什么时候不行

有些情况下这不起作用.

  1. 如果您还在include和exclude部分中包含该文件 - 包括wins
  2. 如果要将排除的文件导入包含的文件中.
  3. 如果您使用的是旧版本的编译器(早期版本的tsconfig不允许使用通配符)
  4. 您正在编译使用tsc app.ts(或传递其他参数) - 执行此操作时将忽略您的tsconfig

  • 这不起作用。仍然从我试图排除的文件中获取错误。 (2认同)