我正在使用lerna软件包布局:
packages
groupA
packageA
packageB
groupB
packageC
packageD
packageE
packageF
每个程序包都包含一个src
和一个dist
文件夹。
我正在寻找最好的命令,以使每个程序包都编译到其各自的dist
目录中。
按照偏好,我要寻找的是:
tsconfig.json
文件和用于监视(和编译)其各自dist
文件夹中所有内容的命令。tsconfig.json
文件,指定outDir
和srcDir
文件夹,以及用于监视(和编译)其各自dist
文件夹中所有内容的命令。我不知道有什么特定的打字稿方式可以解决这个问题,所以我现在使用bash的方式:
function dev_packages () {
dir=`pwd`
# list all folders in `/packages`
find ./packages -type d | while read d; do
# exclude `.../node_modules` folders
dirname=$dir/$d
if [[ $dirname != *"node_modules"* ]]; then
# if contains a `tsconfig.json`
if [ -f "$dirname/tsconfig.json" ]; then
echo '\n'$fg[yellow]'watching '$dirname'...'$reset_color
cd $dirname && tsc -w
fi
fi
done
}
dev_packages
答案 0 :(得分:0)
您可以在项目根目录中拥有主tsconfig.json
,并在软件包目录中将tsconfig.json
文件分隔为以下内容:
{
"extends": "../../tsconfig.json",
"compilerOptions": {
"outDir": "dist",
},
"include": ["src"]
}