我有一个项目,需要从中构建两种不同的产品。说我有
./src/advanced
./src/basic
所有代码均以Typescript编写,因此我需要使用tsc
进行编译
因此,我创建了3个tsconfig文件
tsconfig-base.json
{
"compilerOptions": {
"module": "commonjs",
"declaration": true,
"noImplicitAny": false,
"removeComments": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"target": "es6",
"sourceMap": true,
"outDir": "./dist",
"baseUrl": "./src",
"lib": ["es2018", "dom", "dom", "dom.iterable", "es6"],
"importHelpers": true,
},
"exclude": ["node_modules", "**/*.spec.ts","dist"]
现在要构建我拥有的basic
产品
tsconfig-basic.json
{
"extends": "./tsconfig-base.json",
"compilerOptions": {
"noEmitHelpers": true
},
"files": [
"basic/main.ts"
]
}
而且我编译如下
$> tsc -p ./tsconfig-basic.json
现在有2个问题
1]找不到文件basic/main.ts
,而在./basic/main.ts
中应在./src/basic/main.ts
中查找。为什么不加baseUrl
?
2]如果固定了(1),则编译后的文件不会写入./dist
。为什么此处未使用基本文件中的"outDir": "./dist
?当我将outDir
添加到tsconfig-basic.json时,它按预期方式工作
无论如何,在这里扩展似乎无效,或者工作方式与我预期的不同。有什么建议可以改善我的设置吗?