我正在尝试拥有一个Typescript接口,该接口允许动态键与非动态的其他数据结合使用。但是好像我每当声明动态密钥一样-这有可能吗?
export interface Templates {
[key: string]: Template;
reportSource: string;
}
以上代码导致:
Property 'reportSource' of type 'string' is not assignable to string index type 'Template'.ts(2411)
这可以编译,但是不是很理想,因为现在每个键可以是Template或string类型,而我试图实现的是只有reportSource可以是string类型,而其他所有键都是Template类型。
export interface Templates {
[key: string]: Template | string;
reportSource: string;
}