@wiincked

Как убрать ошибку Element implicitly has an 'any' type because expression of type 'string'?

Добрый день, подскажите как убрать эту ошибку

Element implicitly has an 'any' type because expression of type 'string' can't be used to index type 'IItems'.
No index signature with a parameter of type 'string' was found on type 'IItems'

5e60b68ad1d85346119510.png

https://codesandbox.io/s/objective-blackwell-qj3il
  • Вопрос задан
  • 20022 просмотра
Решения вопроса 1
Kozack
@Kozack
Thinking about a11y
Потому что TS не знает что конкретно находится в переменной id. Он только знает что там какая-то строка. А поскольку id может быть любой строкой, то и значение ITEMS[0][id] тоже может быть чем угодно.

Вы можете изменить ваш интерфейс, указав какие значения может принимать id
interface IFilters {
    id: keyof IItems; // <-- "id" | "filter1" | "filter2"
    title: string;
  }
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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