Vue CLI、TypeScript和monorepo:如何在/src之外声明类型?

Vue CLI、TypeScript和monorepo:如何在/src之外声明类型?,typescript,vue.js,vue-cli,monorepo,Typescript,Vue.js,Vue Cli,Monorepo,如何指示CLI在特定的@types文件夹中查找类型声明 在/src文件夹中创建的任何*.d.ts都会被加载并正常工作,但如果我将它们移到/src之外的任何位置,我将一无所获 我的目标是这样做(作为monorepo): 我尝试了编译器选项。typeRoots但没有成功。为了以后参考,我在每个项目的tsconfig.json中使用以下配置成功实现了这一点: “包括”:[ “./@types/*.d.ts” ] 但是,我不得不将垫片vue.d.ts和垫片jsx.d.ts放在每个项目的/src中(因为

如何指示CLI在特定的
@types
文件夹中查找类型声明

/src
文件夹中创建的任何
*.d.ts
都会被加载并正常工作,但如果我将它们移到
/src
之外的任何位置,我将一无所获

我的目标是这样做(作为monorepo):


我尝试了
编译器选项。typeRoots
但没有成功。

为了以后参考,我在每个项目的tsconfig.json中使用以下配置成功实现了这一点:

“包括”:[
“./@types/*.d.ts”
]


但是,我不得不将
垫片vue.d.ts
垫片jsx.d.ts
放在每个项目的/src中(因为它们导入每个项目的节点模块中包含的内容)。

hi@simon peyou我也有同样的问题,但我真的认为这不是最干净的方法。你还有其他的解决办法吗?带有包含所有定义的index.d.ts的子包也应该可以工作,不是吗?@nkint我尝试过,但没有成功。有无吊装。所以我决定使用这个不太干净的解决方案,等待VueJS3中更好的TypeScript集成(希望在明年年底之前)。到那时,monorepo将更受欢迎,越来越多的工具将适应它们(几个月以来,这种情况时不时发生)所以@simon peyou ok:)我看到了这个:它使用了TS 3的一个新特性
reference
,但它总是依赖于相对路径,因此它缺少相同的“脏度”,我也在使用你的解决方案,等待更好的monorepo工具ahahha
/@types
/shared_stuff
/project_1
/project_2