Ich habe Router zum Routing verwendet. Es gibt eine Produktliste, und wenn auf ein Produkt geklickt wird, sollte eine Detailseite dieses Produkts angezeigt werden (product.name, product.price). Ich habe versucht, Produkt-Objekt in Abfrage zu übergeben, aber es funktioniert nicht so.Artikeldetails anzeigen nach dem Klicken auf Link in React Router
Hier ist mein Code
productGrid.js
const product = _.map(products, (product) =>
<Col xs={12} md={4} key={product.id} className="products">
<div className="product">
<Link to={{pathname: `product/${product.name}`, query: { query: product }}}>
<img src={product.image} className="img-responsive" />
</Link>
<span className="pull-left product-name">{product.name}</span>
<span className="pull-right price">${product.price}</span>
</div>
</Col>
);
Produkt-view.js
class ProductView extends React.Component {
render() {
console.log('product', this.props.location.query);
return (
<div>Product View</div>
);
}
}
this.props.location.query Konsolen
Was ist das Problem? Haben Sie einen Fehler? Ist 'this.props.location.query' undefined? –
Ich bekomme [Objekt Objekt]. Ich kann nicht sehen, was im Objekt ist. – Serenity
Try 'console.log ('Produkt', this.props.location.query.query)' –