Typescript文件结构,用于将所有打字保持在*.d.ts中

Typescript文件结构,用于将所有打字保持在*.d.ts中,typescript,Typescript,将所有类型保存在*.d.ts而不是*.types.ts中是否是一种良好的做法?我试图将类型声明与实际组件分开,并决定将它们放在*.d.ts文件中。然而,*.d.ts似乎用于向javascript公开类型。在大多数情况下,您希望使用.ts文件.d.ts文件是使用声明:true选项编译的结果,并在相应的.js文件旁边提供类型定义,以便js和ts客户端可以适当地使用包 此外,编译器还将使用源目录中.d.ts文件(如果存在)中的类型来编译并检查项目。但它只将它们视为编译过程的输入,不会将它们复制到输出文

将所有类型保存在*.d.ts而不是*.types.ts中是否是一种良好的做法?我试图将类型声明与实际组件分开,并决定将它们放在*.d.ts文件中。然而,*.d.ts似乎用于向javascript公开类型。

在大多数情况下,您希望使用
.ts
文件
.d.ts
文件是使用
声明:true
选项编译的结果,并在相应的
.js
文件旁边提供类型定义,以便js和ts客户端可以适当地使用包

此外,编译器还将使用源目录中
.d.ts
文件(如果存在)中的类型来编译并检查项目。但它只将它们视为编译过程的输入,不会将它们复制到输出文件夹。因此,为了完整起见,我们可以进行快速比较:

+
.ts
-文件
  • 一般用途的情况下,大多数情况下最受欢迎
  • 文件会自动复制到dist文件夹中,所以类型可以通过公共API使用
  • 复制
    .d.ts
    文件不需要额外的生成过程
+
.d.ts
-文件
  • 编译器强制声明和实现分离
  • 确保类型保留在源目录中,并且仅在项目内部使用

有帮助吗<代码> .D.TS 文件不会被TS复制到DIST文件夹,所以我会考虑<代码> .ts/COD>文件在大多数情况下都是优越的(特别是当你想将它们公开为公共API)时,A.OK,所以*.ts文件不会被复制但*.Type ts会。你可以回答,我把它设为正确答案。