【发布时间】:2019-03-06 06:33:42
【问题描述】:
我希望能够采用这样的类型:
export interface NodesState {
attr1: number;
attr2: number;
attr3: number;
}
并赋予用户命名类型的能力。
所以这是合法的:
{
namespace1: {
attr1: 100,
attr2: 150,
attr3: 200
},
namespace2: {
attr1: 300,
attr2: 400
}
}
但是没有命名空间也是合法的:
{
attr1: 200,
attr2: 100,
attr3: 200
}
我试过了:
export type MakeState<T> = T & {
[key: string]?: Partial<T>
}
但这不是有效的打字稿。
我正在尝试做的事情可能吗?
【问题讨论】:
标签: typescript