you_are_enot
@you_are_enot
Пограммист любитель

Как указать тип объекта?

Как перевести следующий код из js в ts?
...
const sportsMap = {}
for (let i = 0, len = sports.length; i < len; i++) {
    this.sportsMap[sports[i]["id"]] = sports[i]
}
...


Если я просто переношу код в ts, то появляется сообщение об ошибке.

lement implicitly has an 'any' type because expression of type 'number' can't be used to index type '{}'.
No index signature with a parameter of type 'number' was found on type '{}'
  • Вопрос задан
  • 73 просмотра
Решения вопроса 1
@StockholmSyndrome
interface ISport {
    id: number,
    parentId: number,
    name: string,
}

const sports: ISport[] = ...;


interface ISportsMap {
    [x: number]: ISport;
}

const sportsMap: ISportsMap = {}
for (let i = 0, len = sports.length; i < len; i++) {
    sportsMap[sports[i]["id"]] = sports[i]
}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы