#reactjs #redux #react-router #react-router-dom
#reactjs #redux #react-маршрутизатор #react-router-dom
Вопрос:
Я работаю над сценарием, в котором я хочу открыть определенный URL-адрес на новой вкладке, когда пользователь нажимает на определенную кнопку. Я использовал window.open(«/ItemPage», ‘_blank’); для открытия новой вкладки. но я не могу передавать данные конкретному компоненту через маршрутизатор react.
import React from 'react';
import { Router, Route, Switch } from 'react-router-dom';
import Home from './Home';
import ItemPageComponent from './ItemPageComponent';
import history from '../history';
import { connect, Provider } from 'react-redux';
class RouterComponent extends React.Component {
render() {
console.log("CCTV cameraInfoFrame:: " this.props.item.name);
return (
<div>
<Router history={history}>
<div>
<Switch>
<Route exact
path="/"
component={Home}
/>
<Route exact
path="/itemPage"
component={<ItemPageComponent data={ this.props.item} />}
/>
</Switch>
</div>
</Router>
</div>
);
}
}
const mapStateToProps = (state) => ({
item: state.PopoutReducer.itemDetailsState
});
const RouterContainer = connect(
mapStateToProps,
)(RouterComponent);
export default RouterContainer;
Кто-нибудь может мне помочь в этом?
Заранее спасибо.
Комментарии:
1. Откуда передаются реквизиты
RouterComponent
?2. И сколько » много » данных вы хотите передать? например, одна строка
name
или подобный объектitem
?3. @GabrielePetrioli Я обновил полный фрагмент кода.
4. Я хочу передать объект item. всякий раз, когда я передаю строковое значение, я могу прочитать его в другом компоненте. но я хочу передать объект item.