#typescript
#typescript
Вопрос:
Например, у меня есть тип перечисления Currency
. Я не могу его изменить, потому что он автоматически строится на схеме graphql. Я хочу использовать его для своих данных, но я не знаю, как это сделать.
enum Currency {
rub = 'RUB',
usd = 'USD',
eur = 'EUR',
}
const data: { currency: Currency[keyof typeof Currency] } = {
currency: 'RUB',
};
Ошибки
TS2339: Property 'eur' does not exist on type 'Currency'.
TS2339: Property 'rub' does not exist on type 'Currency'.
TS2339: Property 'usd' does not exist on type 'Currency'.
Ответ №1:
Я не уверен, что возможно сделать именно то, что вы пытаетесь сделать, но, скорее всего, вы захотите сделать что-то вроде этого:
const data: { currency: Currency } = {
currency: Currency.rub,
};
Обычно так используются перечисления (всегда явно ссылаясь на перечисление при получении одного из его значений).
Комментарии:
1. Спасибо! Я думаю, вы правы. Я приму ваш ответ, когда stackoverflow позволит это