【问题标题】:How to get current time in hh:mm:ss format using moment in React JS如何使用 React JS 中的时刻以 hh:mm:ss 格式获取当前时间
【发布时间】:2022-01-19 17:19:26
【问题描述】:

我想计算小时和时刻之间的时间。举例:

export const DataCoba: React.FC = () => {
const format = "hh:mm:ss";
  return (
    <div>
      {moment(format).isBetween(
        moment("21:00:00", format),
        moment("23:00:00", format)
      )
        ? "Between"
        : "NOOO"}
    </div>
  );
};

我想要从上面的脚本中获取当前时间,但仅限于 hh:mm:ss 格式。 例如:moment('23:00:00', hh:mm:ss)

moment(format) 显示的日期无效。有办法吗?

【问题讨论】:

  • 你在你的 package.json 中添加了暂时的依赖吗?您是否已将其导入此源文件?
  • 您的脚本没有获取当前时间,它是一个布尔函数,如果当前时间在您编写的两次之间,则返回 true。此外,moment 不会将格式作为第一个参数。
  • 格式在这里真的很重要吗?你可以简单地做moment().isBetween(moment().set('hour', 21), moment().set('hour', 23)) ? 'Yes' : 'No'。 Moment 是一个 DateTime 库;您正在尝试仅将其与 Time 一起使用。
  • 是的,.set('minute', 0) 或任何你想要的值。
  • 然后可以鼓励评论者将他们的评论转换为答案,OP 可以社区 wiki 进行自我回答,或者可以删除问题。

标签: javascript reactjs typescript momentjs


【解决方案1】:

删除你的第一个时刻的参数。因为实际上你的第二个和第三个时刻与你的第一个时刻是同一天。

试试这个:

export const DataCoba: React.FC = () => {
const format = "hh:mm:ss";
  return (
    <div>
      {moment().isBetween(
        moment("21:00:00", format),
        moment("23:00:00", format)
      )
        ? "Between"
        : "NOOO"}
    </div>
  );
};

【讨论】:

    【解决方案2】:

    这是@TimLewis 的预期答案

    moment().isBetween(moment().set('hour', 21), moment().set('hour', 23)) ? 'Yes' : 'No'
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-03-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-26
      相关资源
      最近更新 更多