Свойство состояния расположения RouteComponentProps не существует для типа {} - PullRequest
1 голос
/ 16 января 2020

Мы начинаем получать такого рода ошибки. До того, как код копировался как обычно, у нас нет ошибок в процессе компиляции. Но теперь некоторые ребята, которые установили приложение реагировать с нуля, начинают получать эту ошибку, только когда мы направляемся на новую страницу и пытаемся, чтобы готовые свойства сформировали состояние местоположения.

Ts Ошибка

Это то, что мы делаем для чтения состояния, которое работало раньше:

    interface IPageProps extends RouteComponentProps {...}
interface IState  {
  from: string;
  to: string;
}
    class Page extends Component<IPageProps, IState> {
    constructor(props: IPageProps) {
    super(props);
    const {
      location: { state: routeState },
      history,
    } = props;
    this.state = {
      from: routeState && routeState.from ? routeState.from : '',
      to: routeState && routeState.to ? routeState.to : ''
    };
  }
  }

Итак, ошибки в routeState.from и routeState.to

Версии реакции -routes:

  "@types/react-router": "^5.1.1",
        "@types/react-router-dom": "^4.3.5",
      "react-router": {
          "version": "5.1.2",
          "resolved": "https://registry.npmjs.org/react-router/-/react-router-5.1.2.tgz",
          "integrity": "sha512-yjEuMFy1ONK246B+rsa0cUam5OeAQ8pyclRDgpxuSCrAlJ1qN9uZ5IgyKC7gQg0w8OM50NXHEegPh/ks9YuR2A==",
          "requires": {
            "@babel/runtime": "^7.1.2",
            "history": "^4.9.0",
            "hoist-non-react-statics": "^3.1.0",
            "loose-envify": "^1.3.1",
            "mini-create-react-context": "^0.3.0",
            "path-to-regexp": "^1.7.0",
            "prop-types": "^15.6.2",
            "react-is": "^16.6.0",
            "tiny-invariant": "^1.0.2",
            "tiny-warning": "^1.0.0"
          }
        },
"react-router-dom": {
  "version": "5.1.2",
  "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-5.1.2.tgz",
  "integrity": "sha512-7BPHAaIwWpZS074UKaw1FjVdZBSVWEk8IuDXdB+OkLb8vd/WRQIpA4ag9WQk61aEfQs47wHyjWUoUGGZxpQXew==",
  "requires": {
    "@babel/runtime": "^7.1.2",
    "history": "^4.9.0",
    "loose-envify": "^1.3.1",
    "prop-types": "^15.6.2",
    "react-router": "5.1.2",
    "tiny-invariant": "^1.0.2",
    "tiny-warning": "^1.0.0"
  }
},

Есть ли у кого-то такая же проблема? Как вы решили это?

Дело в том, что этого раньше не было и оно начинает происходить сейчас.

Заранее спасибо!

1 Ответ

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

В вашей декларации:

interface IPageProps extends RouteComponentProps {...}

Вы указываете местоположение в этом? Похоже, что вы нигде не получаете location и / или location.state, поэтому возникает эта ошибка: если вы посмотрите на эту ссылку , это может немного помочь вам с реагировать на маршрутизатор.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...