【发布时间】:2017-06-08 18:44:39
【问题描述】:
我使用路由器进行路由。有一个产品列表,当单击产品时,应显示该产品的详细信息页面(产品名称,产品价格)。我尝试在查询中传递产品对象,但它不是那样工作的。
这是我的代码
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>
);
product-view.js
class ProductView extends React.Component {
render() {
console.log('product', this.props.location.query);
return (
<div>Product View</div>
);
}
}
this.props.location.query 控制台
【问题讨论】:
-
有什么问题?你有错误吗?
this.props.location.query未定义吗? -
我得到 [object 对象]。我看不到对象内部的内容。
-
试试
console.log('product', this.props.location.query.query) -
我已附上图片
标签: javascript html reactjs ecmascript-6 react-router