【发布时间】:2018-02-28 02:16:27
【问题描述】:
我希望定义一个 Map 变量,该变量应包含原始值(字符串 | 数字 | 布尔值)或另一个相同类型的 Map。
我试过这样做:
type Primitive = string | number | boolean;
type SafeNestedMap = Map<string, Primitive | SafeNestedMap>;
let states: SafeNestedMap = new Map<string, SafeNestedMap>();
但是编译器抱怨:
TS2456: Type alias 'SafeNestedMap' circularly references itself.
如何正确声明这种递归类型?
【问题讨论】:
标签: typescript