我有一个 Node.js 项目,最近从 ECMAScript 6 兼容的 JavaScript 转换为 TypeScript。我仍然不完全熟悉 TypeScript 和 ES6 如何交互,特别是在命名空间和类型方面。
我的项目中有一个名为 sql
的子文件夹,顾名思义,它导出许多函数来与项目的 MySQL 数据库交互。我想在 Sql.Models
命名空间中组织我的数据库模型类型,以便可以引用它们,例如Sql.Models.User
。我希望我的模型在 sql
文件夹内的一个或多个 .d.ts
文件中声明,但我不知道如何正确组织它,以便可以在其他地方引用这些类型。我显然不能 require
或 import
.d.ts
文件;这不是有效的 TypeScript 操作。如何在另一个与 ES6 兼容的 TypeScript 模块中使用 .d.ts
文件中声明的类型 Sql.Models.User
?
最佳答案
How can I use the type Sql.Models.User declared in a .d.ts file in another ES6-compatible TypeScript module?
以下非常简单的设置有效。
root
sql
models.d.ts
index.ts
tsconfig.json
model.d.ts
文件声明一个命名空间和一个类型。如图所示,index.ts
文件可以为该命名空间添加别名和/或直接访问它。
以上使用的是 TypeScript 版本 2.2.1。
关于node.js - TypeScript ES6 命名空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42603525/