代码之家  ›  专栏  ›  技术社区  ›  Sreekuttan

react多日期选择器-time_picker手动输入时间时自动将AM转换为PM

  •  2
  • Sreekuttan  · 技术社区  · 1 年前

    所以当我使用react多日期选择器-time_picker时,我遇到了这个问题。 当我们在Timepicker文本框中手动输入时间时,它会自动将我输入的“AM”更改为“PM”。只有当我们输入的时间介于上午12:00和12:59之间时,才会发生这种情况。 我不希望它将其更改为PM,因为如果用户没有注意到这一时间变化,他们可能会感到困惑。 当我查看他们的官方网站时,我也发现了这个问题。

    https://shahabyazdi.github.io/react-multi-date-picker/other-pickers/

    你可以在他们的官方网站上查看这个问题。首选 只有时间选择器Meridiem '并使用他们的时间选择器并输入' 上午12:00:00 '手动操作,看看魔法。 有人能解决这个问题吗?提前谢谢。

    1 回复  |  直到 1 年前
        1
  •  2
  •   Rahul R    1 年前

    我查阅了文档,找到了你在问题中提到的部分。 尽管我对此没有正确的答案,但我有一个变通办法,可能对你有用。

      onChange={(date, dateParams) => {
        const { input, isTyping } = dateParams;
        const updatedDateObject = new Date(date);
        const hours = updatedDateObject?.getHours();
        if (
          input?.value?.toLowerCase()?.includes('am')
          && hours >= 12
          && isTyping
        ) {
          updatedDateObject?.setHours(hours - 12);
          // Use the updatedDateObject as per your liking!
        }
        // codes to run if the user is not manually typing the time!
      }}