问题描述
我有一个带有两个不同源代码树的TypeScript包(使用yarn 2作为包管理器):
|- src-bin
\- src
src-bin
中的源目标节点,而src
中的源目标浏览器环境。因此,我有两个不同的tsconfig.json
文件。
我通常使用tsc -b . src-bin
构建它们,效果很好。
但是,在“监视模式”下,tsc
仅编译并监视src
,而不监视src-bin
。
解决方法
我实际上能够使用项目参考来解决它:
tsconfig.json
(用于src):
{
"extends": "../tsconfig.base.json","include": ["src/**/*.ts","src/**/*.tsx"],"references": [{ "path": "src-bin" }],"compilerOptions": {
"types": [],"rootDir": "src","outDir": "build","noEmit": false,"declaration": true,"composite": true
}
}
src-bin/tsconfig.json
(对于src-bin):
{
"extends": "../../tsconfig.base.json","include": ["**/*.ts"],"compilerOptions": {
"types": ["node"],"rootDir": ".","outDir": "../build/bin","composite": true
}
}
运行tsc -b --watch
现在可以同时编译两个源代码树。