打字稿 tsconfig.json 包括排除不工作
typescript tsconfig.json include exclude not working
我有一个网络项目
我有文件夹
src/app/shared/models
src/app/shared/services
src/app/shared/types
其中每一个都是子文件夹,其中包含文件夹或文件,我想排除这些文件夹,所以我尝试了:
"include": [
"src/**/*"
],
"exclude": [
"node_modules",
"**/*.spec.ts",
"src/app/shared/**/*"
]
它不起作用,甚至 "src/app/shared/*"
也不起作用,我该怎么做?
我的 tsconfig.json 现在:
{
"compilerOptions": {
"outDir": "./dist/out-tsc",
"baseUrl": "src",
"sourceMap": true,
"declaration": false,
"moduleResolution": "node",
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"target": "es5",
"typeRoots": [
"node_modules/@types"
],
"lib": [
"es2015",
"dom"
]
},
"include": [
"src/**/*"
],
"exclude": [
"node_modules",
"**/*.spec.ts",
"src/app/shared/**/*"
]
}
谢谢
首先要考虑的是,如果您决定使用“exclude
”关键字来列出文件,为了将它们从编译过程中删除,您还需要排除任何其他文件,它通过使用三重斜杠指令“/// <reference path="..." />
”或“import
”语句引用排除列表中的文件。
tsconfig.json
将一个文件夹变成一个“项目”。在不指定任何“exclude
”或“files
”条目的情况下,包含 tsconfig.json
及其所有子目录的文件夹中的所有文件都包含在您的编译中。
tsconfig.json
自动包含不嵌入模块解析。如果编译器将某个文件识别为模块导入的目标,则无论它是否在前面的步骤中被排除,它都将包含在编译中。
The include
and exclude
properties take a list of glob-like file patterns. The supported glob wildcards are:
*
matches zero or more characters (excluding directory separators)
?
matches any one character (excluding directory separators)
**/
recursively matches any subdirectory
When using the files
property it takes a list of relative or absolute file paths.
设置“baseUrl
”通知编译器在哪里可以找到模块。所有具有非相对名称的模块导入都假定为相对于 baseUrl。
可以使用“exclude
”属性 过滤使用“include
”包含的文件。但是,如果您明确使用“files
”属性 包含文件,则无论“exclude
”.
如何,它们都将始终包含在内
我有一个网络项目
我有文件夹
src/app/shared/models
src/app/shared/services
src/app/shared/types
其中每一个都是子文件夹,其中包含文件夹或文件,我想排除这些文件夹,所以我尝试了:
"include": [
"src/**/*"
],
"exclude": [
"node_modules",
"**/*.spec.ts",
"src/app/shared/**/*"
]
它不起作用,甚至 "src/app/shared/*"
也不起作用,我该怎么做?
我的 tsconfig.json 现在:
{
"compilerOptions": {
"outDir": "./dist/out-tsc",
"baseUrl": "src",
"sourceMap": true,
"declaration": false,
"moduleResolution": "node",
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"target": "es5",
"typeRoots": [
"node_modules/@types"
],
"lib": [
"es2015",
"dom"
]
},
"include": [
"src/**/*"
],
"exclude": [
"node_modules",
"**/*.spec.ts",
"src/app/shared/**/*"
]
}
谢谢
首先要考虑的是,如果您决定使用“exclude
”关键字来列出文件,为了将它们从编译过程中删除,您还需要排除任何其他文件,它通过使用三重斜杠指令“/// <reference path="..." />
”或“import
”语句引用排除列表中的文件。
tsconfig.json
将一个文件夹变成一个“项目”。在不指定任何“exclude
”或“files
”条目的情况下,包含 tsconfig.json
及其所有子目录的文件夹中的所有文件都包含在您的编译中。
tsconfig.json
自动包含不嵌入模块解析。如果编译器将某个文件识别为模块导入的目标,则无论它是否在前面的步骤中被排除,它都将包含在编译中。
The
include
andexclude
properties take a list of glob-like file patterns. The supported glob wildcards are:
*
matches zero or more characters (excluding directory separators)?
matches any one character (excluding directory separators)**/
recursively matches any subdirectoryWhen using the
files
property it takes a list of relative or absolute file paths.
设置“baseUrl
”通知编译器在哪里可以找到模块。所有具有非相对名称的模块导入都假定为相对于 baseUrl。
可以使用“exclude
”属性 过滤使用“include
”包含的文件。但是,如果您明确使用“files
”属性 包含文件,则无论“exclude
”.