我正在尝试使用reactdatepicker,但收到错误消息,未定义setHours

时间:2020-02-04 20:02:16

标签: reactjs date react-datepicker

我知道该集合应该在Date对象上执行,即使我在Date对象上执行也是如此。 reactdatepicker根本不起作用。

  • 第12:3行:未定义'setHours'no-undef

  • 第12:12行:未定义'setMinutes'no-undef

  • 第43:9行:未定义'setHours'no-undef

  • 第43:18行:未定义'setMinutes'no-undef

  • 44:9行:'setHours'未定义为un-undef

  • 第44:18行:未定义'setMinutes'no-undef

  • 45:9行:'setHours'未定义为un-undef

  • 第45:18行:未定义'setMinutes'no-undef

  • 第46:9行:“ no-undef”未定义“ setHours”

  • 第46:18行:未定义'setMinutes'no-undef

        const [startDate, setStartDate] = useState(
          setHours(setMinutes(new Date(), 30), 16)
        );
        return (
          <DatePicker
            selected={startDate}
            onChange={date => setStartDate(date)}
            showTimeSelect
            excludeTimes={[
              setHours(setMinutes(new Date(), 0), 17),
              setHours(setMinutes(new Date(), 30), 18),
              setHours(setMinutes(new Date(), 30), 19),
              setHours(setMinutes(new Date(), 30), 17)
            ]}
            dateFormat="MMMM d, yyyy h:mm aa"
          />
        );
      }; ```


3 个答案:

答案 0 :(得分:3)

您应该从setHours模块中导入setMinutesdate-fns

import setHours from "date-fns/setHours";
import setMinutes from "date-fns/setMinutes";

答案 1 :(得分:2)

导入有点错误。

import setHours from 'date-fns/setHours'
import setMinutes from 'date-fns/setMinutes'

setHours应该从setHours而不是setMinutes导入。

答案 2 :(得分:0)

如果您对额外打包 date-fns npm

不感兴趣

您可以简单地使用 new Date()

只是一个例子

 excludeTimes={[
    new Date(new Date().setHours(new Date().getHours(), new Date().getMinutes())
]}

注意:从 date-fns 导入的new Date().setHourssetHours完全不同