Javascript ReactJS:Push仅为插槽使用上次推送的对象更新所有对象

Javascript ReactJS:Push仅为插槽使用上次推送的对象更新所有对象,javascript,reactjs,object,state,Javascript,Reactjs,Object,State,我正试着在预约的时间内预订座位 这里,我先拿到所有的插槽 const newSlot = timingSlots(getDoctorScheduleDetails[0].durationInMinutes) 然后,使用while循环为每个日期的时间表更新其插槽(无论是否已预订) while (now.isSameOrBefore(scheduleEndDate)) { if (isWorkingDay(now.day())) { newSlot.map((sd) =>

我正试着在预约的时间内预订座位

这里,我先拿到所有的插槽

const newSlot = timingSlots(getDoctorScheduleDetails[0].durationInMinutes)
然后,使用while循环为每个日期的时间表更新其插槽(无论是否已预订)

while (now.isSameOrBefore(scheduleEndDate)) {
  if (isWorkingDay(now.day())) {
    
    newSlot.map((sd) => {
      var twodate = now.format("YYYY-MM-DD");
      let data =
        appointments &&
        appointments.filter(
          (val) =>
            val.bookingTime === sd.slot &&
            moment(
              moment(val.bookingDateTime, "YYYY-MM-DD").format("YYYY-MM-DD")
            ).isSame(twodate)
        );
      data && data.length > 0
        ? (sd.bookingStatus = 1)
        : (sd.bookingStatus = 0)

        return data
    })
在这里,我得到了具体日期的最新时间表

    schedule.push({
      date: now.format("YYYY-MM-DD"),
      day: now.day(),
      slots: newSlot
    })  

  }

  now.add(1, "days"); 
但每次仅使用最后插入的对象值和覆盖的插槽值更新插槽。 我尝试使用useState,但它没有更新while循环中的状态