Задать вопрос
@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
  • Вопрос задан
  • 20490 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
Kozack
@Kozack
Thinking about a11y
Потому что TS не знает что конкретно находится в переменной id. Он только знает что там какая-то строка. А поскольку id может быть любой строкой, то и значение ITEMS[0][id] тоже может быть чем угодно.

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

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

Похожие вопросы