Ошибка преобразования строки в типизированный список - typescript
0
Мне нужно преобразовать строку (UrlStatus) в enum (Status).
export enum Status {
available,
inProgress
}
export type UrlStatus = available | inprogress;
// something wrong here
export const UrlStatusToStatus: { [UrlStatus]: Status } = {
available: [Status.available],
inprogress: [Status.inProgress]
}
Я получаю эту ошибку при попытке использовать UrlStatusToStatus[status] //status type is UrlStatus
Element implicitly has an any type because expression of type UrlStatus cant be used to index type {}.
Property available does not exist on type {}.
Что я делаю не так?
Источник
- 172
- 1
- 11 май 2020 2020-05-11 10:17:39
- Robert Minasyan
1 ответ
0
Ваш синтаксис немного отключен:
enum Status {
available = 1,
inProgress = 2
};
type UrlStatus = available | inprogress;
const UrlStatusToStatus: { [key in UrlStatus]: Status } = {
available: Status.available,
inprogress: Status.inProgress
};
console.log(UrlStatusToStatus[inprogress]);
Выход:
2
- 11 май 2020 2020-05-11 10:17:40
- Dave Cousineau