【问题标题】:How can I get the duration (in seconds) of a time from a custom Moment format如何从自定义 Moment 格式获取时间的持续时间(以秒为单位)
【发布时间】:2019-01-13 03:11:31
【问题描述】:

我试图以秒为单位获取时间的持续时间,但是该时间表示为自定义格式。

我正在做以下事情:

moment.duration(inputTime, "HH:mm:ss.SSS").asSeconds()

这很有效,但是我在使用打字稿定义时遇到了问题:

import * as moment from "moment";

当我收到以下打字稿错误:

error TS2345: Argument of type '"HH:mm:ss.SSS"' is not assignable to parameter of type '"s" | "m" | "h" | "d" | "M" | "y" | "year" | "years" | "month" | "months" | "week" | "weeks" | "w...'.

我该如何解决这个问题?如果我不使用打字稿定义,则该行将按预期工作。

我正在使用 Moment 版本 2.22.1

【问题讨论】:

  • 你能创建一个工作/可运行的代码演示吗?那很容易调试
  • inputTime 的值是多少?请参阅moment.duration 文档"HH:mm:ss.SSS" 不是有效参数
  • @VincenzoC 输入时间为:00:40:01.884,解析为2401.884。实际上我想保留毫秒,所以输出格式应该是秒加毫秒。

标签: typescript momentjs


【解决方案1】:

实际上,似乎根本没有指定第二个参数仍然给我相同(正确)的结果,所以我会使用它:)

moment.duration(inputTime).asSeconds()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-10-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-16
    • 2021-12-27
    相关资源
    最近更新 更多