输入for循环react + typescript吗?

时间:2019-03-28 09:47:36

标签: reactjs typescript react-tsx

我有一个待办事项的界面:

export interface InitialTodoLoadingState {
  toggleComplete: boolean;
  updateText: boolean;
  deleteTodo: boolean;
}
export interface Todo {
  complete: boolean;
  _id: string;
  text: string;
  loading: InitialTodoLoadingState;
}

我试图像这样循环一个待办事项对象数组:

const processing = todos // check if processing operations e.g.: toggle complete
      .map((todo: TodoInterface) => {
        for (let loadProp in todo.loading) {
          if (todo.loading[loadProp]) return true; // ERROR HERE
          return false;
        }
      })
      .some(process => !!process);

我收到一条错误消息:

Element implicitly has an 'any' type because type 'InitialTodoLoadingState' has no index signature.

我如何在这里实现打字稿?我不想使用任何

1 个答案:

答案 0 :(得分:1)

要消除该错误,请添加索引签名(请参见here):

export interface InitialTodoLoadingState {
  toggleComplete: boolean;
  updateText: boolean;
  deleteTodo: boolean;
  [key: string]: boolean;
}