在React JS中映射

时间:2019-03-15 23:12:24

标签: reactjs

我正在尝试映射,但我无法在此处映射订单。它写成无法读取未定义的属性,但产品可以工作。

这是我的课程:

const p = products.map(p => {
  return (
    <Product
    key={p._id}
    product={p}
    />
  );
});
const o = orders.map(o => {
  return (
    <div
    key={o._id}
    product={p}
    />
  );
});

这是对象的控制台日志:

console log of the fetched data that I want to map

2 个答案:

答案 0 :(得分:2)

在第二张地图中,您应该将product = {p}更改为product = {o}。 P在那里是未知变量。

const o = orders.map(o => {
  return (
    <div
    key={o._id}
    product={o}
    />
  );
});

答案 1 :(得分:0)

正如@IfSoGirl所提到的,您需要在第二种地图方法中为产品道具提供o而不是p

此外,这是简化的地图功能。由于它是map下的单个jsx元素,因此无需返回语法

   const p = products.map(p => <Product key={p._id} product={p}/>);

   const o = orders.map(o => <div key={o._id} product={o}/>);