打字稿:从类型/接口声明访问属性值

时间:2019-01-30 12:48:46

标签: typescript

我有以下类型

export type OfferTypes = {
__typename: 'OfferTypeTypePagination';

items: any[];

total: number;
};

是否可以从代码(例如OfferTypeTypePagination)中以字符串形式访问console.log(OfferTypes.__typename)

1 个答案:

答案 0 :(得分:0)

导出类型时,“ OfferTypeTypePagination”不是__typename的值或默认值,基本上不是另一种类型。

这意味着每个OfferTypes变量都将具有一个名为“ __typename”的属性,并且只有一个值,该值始终为“ OfferTypeTypePagination”

所以您的代码应如下所示:

const key = {
    'OfferTypeTypePagination': null,
};

export type OfferTypes = {
    __typename: keyof typeof key;

    items: any[];

    total: number;
};

console.log(Object.keys(key)[0]);