Идентификатор свойства не существует для типа {} - PullRequest
0 голосов
/ 28 января 2020
  const state = history.location.state;
  const id = state?.id;

Ниже приведена ошибка при наборе:

Property 'id' does not exist on type '{}'.  TS2339

Я получаю значение идентификатора из history.location.state, т. Е. От реагирующего маршрутизатора. Я отправляю идентификатор проп в качестве состояния в history.pu sh ("pathname", {id: "some value"}.

Итак, этот код работает, но выдает ошибку при наборе текста.

Пожалуйста, помогите мне, как исправить вышеуказанная ошибка машинописи.

1 Ответ

0 голосов
/ 28 января 2020

Похоже, что компилятор TypeScript не знает правильный тип для history.location.state. Вы можете попробовать установить типы для React:

npm install --save-dev @types/react @types/react-dom @types/react-router-dom

В качестве альтернативы, чтобы просто обойти ошибку, вы можете заставить state набрать any:

const state = history.location.state;
const id = (state as any)?.id;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...