【发布时间】:2020-07-16 17:03:17
【问题描述】:
假设我正在用 javascript 编写一个带有 typescript 声明文件的库,并且我想通过接口创建库实例的“形状”,如下所示:
export interface Library {
foo: string;
bar: string;
}
现在假设 foo 和 bar 类型会更复杂,我想将其执行为不同的类型别名,例如:
export type ID = string | number;
export interface Library {
foo: ID;
bar: ID;
}
现在我想给ID 一些意义(因为“id”没有说明任何事情),我认为我能做到这一点的唯一方法是将它移动到不同的命名空间,这本质上应该被命名为库 - “库”:
export namespace Library {
export type ID = string | number;
}
export interface Library {
foo: Library.ID;
bar: Library.ID;
}
虽然它有效,但它令人困惑和模棱两可,因为一次导入会同时是两种不同的东西
我该如何解决这个问题?也许有一些命名技巧?
【问题讨论】:
标签: typescript naming