andreyvoroncov
@andreyvoroncov
мечтатель

Как правильно поправить интерфейс?

Всем привет! Typescript начал изучать недавно. Не понимаю почему TS ругается на это
interface IModel {
  readonly id: string                           // только для чтения
  color?: string                                   // необязательный
  [key: string]: string | undefined       // ключ любая строка
  setColor(str: string): void                 // ф-я с параметром string
}

подчеркивает setColor и пишет: "Property 'setColor' of type '(str: string) => void' is not assignable to 'string' index type 'string | undefined'."
Как правильно описать такой интерфейс без // @ts-ignore ?
  • Вопрос задан
  • 60 просмотров
Решения вопроса 1
black1277
@black1277
Вольный стрелок
Попробуй так
interface IModel {
  readonly id: string
  color?: string
  [key: string]: string | undefined | Function
  setColor(str: string): void
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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