Я создал приложение, используя React-Redux и React-router-dom (v4).Во всем приложении я использовал компонентact-router-dom, чтобы (1) перейти на другую страницу и (2) пропустить реквизит.Это работает в Chrome, но не работает в FF с ошибкой this.props.location.state undefined
.
<Link to={{
pathname:
`/facilities/permits/permitplanapproval/${this.props.id}`,
state: { facility: facility }
}}><Button className="btn btn-light edit">Create</Button>
Я сталкивался с этим сообщением (https://github.com/ReactTraining/react-router/issues/6499), что это проблема FFПравило гласит: «Не должно быть никакого потомка интерактивного контента», поэтому, если я правильно понимаю, это говорит о том, что кнопка «сказать» не может передавать контент только для выполнения действия, такого как навигация или для отправки / сброса и т. Д.
Итак, яудалил кнопку из ссылки и только что попробовал:
<Link to={{
pathname:
`/facilities/permits/permitplanapproval/${this.props.id}`,
state: { facility: facility }
}}>Create</Link>
, но я получил те же результаты.
Я также пытался просто использовать кнопку
<Button className="btn btn-light edit"
onClick={() =>
history.push(`/facilities/permits/permitplanapproval/${this.props.id}`,
{facility: this.props.facility} )}
>Create</Button>
PACKAGE.ФАЙЛ JSON (для справки)
"dependencies": {
"axios": "^0.18.0",
"bootstrap": "^4.3.1",
"history": "^4.7.2",
"moment": "^2.24.0",
"react": "^16.4.2",
"react-bootstrap": "^1.0.0-beta.5",
"react-csv": "^1.1.1",
"react-dom": "^16.4.2",
"react-openidconnect": "^1.1.0",
"react-redux": "^5.0.7",
"react-router-dom": "^4.3.1",
"react-scripts": "1.1.5",
"react-table": "^6.10.0",
"react-widgets": "^4.4.10",
"redux": "^4.0.0",
"redux-form": "^7.4.2",
"redux-form-validators": "^2.7.5",
"redux-oidc": "^3.1.2",
"redux-thunk": "^2.3.0"
},
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test --env=jsdom",
"eject": "react-scripts eject"
},
"devDependencies": {
"redux-logger": "^3.0.6"
}