У меня есть объект tasks, который наследуется от интерфейса ITaskListState. Мне нужно пройти по всем полям оъекта и отфильтровать их по условию.
Tasks:
tasks: ITaskListState = {
tasksToDo: new Array<ITaskItem>(),
tasksInProgress: new Array<ITaskItem>(),
finishedTasks: new Array<ITaskItem>(),
}
Interface ITaskListState:
export interface ITaskListState
{
tasksToDo: Array<ITaskItem>,
tasksInProgress: Array<ITaskItem>,
finishedTasks: Array<ITaskItem>,
}
Я пыталась реалировть фильтрацию так:
filterTasks(filteredTask: ITaskItem)
{
for (let key in this.tasks)
{
this.tasks[key] = this.tasks[key].filter((task: ITaskItem) => task !== filteredTask);
console.log(key);
}
}
Но во время компиляции я получаю ошибку:
TS7053: Element implicitly has an 'any' type because expression of type 'string' can't be used to index type 'ITaskListState'. No index signature with a parameter of type 'string' was found on type 'ITaskListState'.
Как я могу обойти эту ошибку компилятора?