При обновлении реакции с версии 15 на версию 16 я получил эту ошибку:
Невозможно прочитать свойство 'forEach' из неопределенного в компоненте PrivateRoute.
Пакет JSON показываетэти версии:
"react": "^16.10.1",
"react-dom": "^16.10.1",
"react-router": "^5.1.1",
"react-router-dom": "^5.1.1",
"react-router-redux": "*"
Вот код компонента для просмотра:
Я попытался установить eslint и eslint-loader, поскольку обнаружил, что это может быть проблемой, но не повезло
import React from "react";
import { Route, Redirect } from "react-router-dom";
const PrivateRoute = ({
component: Component,
Authenticated,
AdminPage,
Admin,
...props
}) => (
<Route
{...props}
render={props => {
if (AdminPage) {
if (Authenticated && Admin) {
return <Component {...props} />;
} else {
return (
<Redirect
to={{
pathname: "/",
state: { from: props.location }
}}
/>
);
}
} else {
if (Authenticated) {
return <Component {...props} />;
} else {
return (
<Redirect
to={{
pathname: "/login",
state: { from: props.location }
}}
/>
);
}
}
}}
/>
);
export default PrivateRoute;