【发布时间】:2016-04-03 01:59:24
【问题描述】:
我是初学者,以本教程为指导学习 React > http://survivejs.com/webpack_react/implementing_notes/
我无法理解和弄清楚如何制作包含产品名称、sku 和价格作为属性的购物清单。我知道如何从教程中传递一个属性,但是一个组件的多个属性我不确定我做错了什么。
我的问题是页面上只显示产品名称。我还需要显示 sku 和价格,但不明白这些是如何不被传递的。
我最好的假设是在 item.jsx 中,它只是传递产品而不是 sku 和价格,所以我该怎么做?
the export default ({product}) => <div>{product}</div>;
这就是我的组件的布局方式。 APP 组件 > 列表组件 > 列表组件
App.jsx
import uuid from 'node-uuid'
import React from 'react';
import Items from './Items.jsx';
export default class APP extends React.Component {
constructor(props) {
super(props);
this.state = {
items: [
{
id: uuid.v4(),
product: 'apples',
sku: '1234',
price: '23.99'
},
{
id: uuid.v4(),
product: 'oranges',
sku: '2345',
price: '24.99'
},
{
id: uuid.v4(),
product: 'strawberries',
sku: '3456',
price: '25.99'
}
]
};
}
render() {
const items = this.state.items;
return (
<div>
<button onClick={this.addItem}>+</button>
<Items items={items} />
</div>
);
}
}
Items.jsx
import React from 'react';
import Item from './item.jsx';
export default ({items}) => {
return (
<ul>{items.map(item =>
<li key={item.id}>
<Item
product={item.product}
sku={item.sku}
price={item.price} />
</li>
)}</ul>
);
}
Item.jsx
export default ({product}) => <div>{product}</div>;
【问题讨论】:
标签: reactjs components