首页 > 解决方案 > Reactstrap Dropdown 无法捕获数据

问题描述

我正在尝试做一个下拉菜单,我可以在其中选择一辆车并阻止几天。到目前为止,我可以选择汽车,并且有几天残疾。但是,当我按下按钮时,并没有捕获数据。

我尝试通过控制台日志进行检查。我能够捕获数据,但它只是不能在主要功能上进行翻译

这是我的模态形式代码的一部分。

感谢您对此的任何帮助。谢谢

const [cars, setCars] = useState([]);
const [isOpenCars, setIsOpenCars] = useState(false);

const [car, setCar] = useState("");
useEffect(() => {
  fetch("http://localhost:4000/admin/cars")
    .then((res) => res.json())
    .then((res) => {
      setCars(res);
    });
}, []);
const handleChooseCar = (indivCar) => {
  setCar(indivCar);
  const dates = [];
  props.bookings.forEach((indivBooking) => {
    if (indivBooking.car._id === indivCar._id) {
      dates.push({
        start: indivBooking.startDate,
        end: indivBooking.endDate,
      });
    }
  });
  setBlockedDates(dates);
};

const handleChooseDates = (day, modifiers = {}) => {
  if (modifiers.disabled) {
    return;
  }
  const range = DateUtils.addDayToRange(day, dateRange);
  setDateRange(range);
};
const { from, to } = dateRange;
const modifiers = { start: from, end: to };

const disabledDays = [{ before: new Date() }];

blockedDates.forEach((indivDates) => {
  disabledDays.push({
    after: new Date(indivDates.start),
    before: new Date(indivDates.end),
  });
});
<FormGroup>
  <Label>Car:</Label>
  <Dropdown
    isOpen={isOpenCars}
    toggle={() => setIsOpenCars(!isOpenCars)}
  >
    <DropdownToggle caret>
      {!car ? "Choose a car" : car.model}
    </DropdownToggle>
    <DropdownMenu>
      {cars.map((indivCar) => (
        <DropdownItem
          key={indivCar._id}
          onClick={() => handleChooseCar(indivCar)}
        >
          {indivCar.make} {indivCar.model}
        </DropdownItem>
      ))}
    </DropdownMenu>
  </Dropdown>
</FormGroup>
<Button
  style={{ backgroundColor: "seagreen" }}
  onClick={() =>
    handleSaveCar(
      car
    )
  }
>
  {isEditing ? "Edit Booking" : "Complete Booking"} 
</Button>

标签: javascriptreactjs

解决方案


推荐阅读