首页 > 解决方案 > 如何将道具映射到对象值 React Big Calendar

问题描述

我正在使用Big Calendar React 组件,它需要一个对象数组EVENTS,其中键的开始结束以及值的日期。

// event state
 events: [
    {
      start: new Date(moment('2018-08-11T02:26:00+00:00')),
      end: new Date(moment('2018-08-11T02:26:00+00:00'))
    },
   //... rest of objects
  ]

我正在使用 redux 来引入我自己的事件对象数组,但具有不同的键名dateGoingLIVE

我想用我的对象数组myEvents创建一个新数组,键为 start 和 end 但我的道具 dateGoingLive 的值。

const { myEvents } = this.props.myEvents;

const newEvents: [
    {
      start: myEvents.dateGoingLive,
      end: myEvents.dateGoingLive
    },
   //... rest of objects
  ]

START 和 END 共享相同 dateGoingLive 道具的原因是因为它是单日事件。

顺便说一句,两个对象数组都具有创建者、名称等属性,但认为在此处粘贴并不重要。如果不是这样,请告诉我。

标签: javascriptreactjsecmascript-6react-redux

解决方案


您可以使用map将带有dateGoingLive键的对象数组带入带有startend键的对象数组。

const { myEvents } = this.props;
const newEvents = myEvents.map(event => ({
  start: event.dateGoingLive,
  end: event.dateGoingLive
}));

推荐阅读