Estoy usando "react-router-dom": "^5.2.0".
Simplemente quiero pasar accesorios a componentes secundarios como este
nota: este es un pseudocódigo:
<Route exact path="/databases/buyordersdata" component={BuyOrders param1={value1}} />Este es el archivo Reaccionar:
class Databases extends Component { render() { return ( <div> <BrowserRouter> <Switch> <Route exact path="/databases/" component={Navigation} /> <Route exact path="/databases/makebuy" component={MakeBuy} /> <Route exact path="/databases/makesell" component={MakeSell} /> <Route exact path="/databases/buyordersdata" component={BuyOrders} /> <Route exact path="/databases/sellordersdata" component={SellOrders} /> <Route exact path="/databases/AllMyOrders" component={MyOrders} /> </Switch> </BrowserRouter> </div> ) } } const element = <Databases />; ReactDOM.render(element, document.getElementById('contents'));Simplemente haga algo como esto: en lugar de usar el component de ruta de esa manera, puede usar el componente de Route como padre y el component en sí mismo como hijo.
<Route exact path="/path"> <BuyOrders param1={value1} /> // Then pass the props like that </Route>En componente principal
<Route exact path="/databases/buyordersdata" render={ (props) => <BuyOrders {...props} order_type={true}/> }/>luego en el componente secundario
class BuyOrders extends Component { constructor(props){ super(props) } ... render() { console.log(this.props.test)Puede pasar accesorios fácilmente a un componente en el accesorio del component , que debe contener el formato JSX:
<Route exact path="/databases/buyordersdata" component={<BuyOrders param1={value1} />} />