给定一个界面:
interface EPostageInsertExEvent_Parameter {
readonly Doc: Word.Document;
cpDeliveryAddrStart: number;
cpDeliveryAddrEnd: number;
readonly cpReturnAddrStart: number,
readonly cpReturnAddrEnd: number;
readonly xaWidth: number;
readonly yaHeight: number;
readonly bstrPrinterName: string;
readonly bstrPaperFeed: string;
readonly fPrint: boolean;
fCancel: boolean;
}
如何将由该接口的键组成的元组类型定义为字符串文字?换句话说,相当于以下内容:
type EPostageInsertExEvent_ArgNames = ['Doc', 'cpDeliveryAddrStart', 'cpDeliveryAddrEnd',
'cpReturnAddrStart', 'cpReturnAddrEnd', 'xaWidth', 'yaHeight', 'bstrPrinterName',
'bstrPaperFeed', 'fPrint', 'fCancel'];
答案 0 :(得分:1)
目前在TypeScript中无法实现。 GitHub中有一个feature request允许这样做,但那里没有多少动作。 (您可能想要给它一个并描述您的用例,或者您可能不会。)TypeScript还没有对类型函数的广泛支持。现在你最接近的是:
type EPostageInsertExEvent_ArgNames = Array<keyof EPostageInsertExEvent_Parameter>;
但这并不能保证关键字的存在性,唯一性或顺序。抱歉没有更好的消息。