【问题标题】:Creating a stopwatch in angular with ng2-simple-timer使用 ng2-simple-timer 以角度创建秒表
【发布时间】:2019-09-07 12:35:16
【问题描述】:

G'day 人,

所以我将 ng2-Simple-timer 与我的 angular 5 应用程序一起使用。我不确定如何用 angular 5 记录时间,所以我只选择了 ng2-Simple-Timer。我正在尝试以毫秒为单位记录时间。有一个关于 plunker 的例子。如果我将 1 秒的值更改为 0.001。我得到了一些奇怪的价值。我认为这是因为 plunker 每半秒刷新一次,所以我在我的机器上测试了它,但不,它仍然没有工作。

plunkerhttp://embed.plnkr.co/HaTd8q/

npm 模块 https://www.npmjs.com/package/ng2-simple-timer#example

基本上我只是希望能够在每次按下输入时以毫秒为单位记录时间。

请指教。

【问题讨论】:

  • 存储经过时间的最佳方法是在计时器开始时刻存储“new Date()”,然后在您执行“new Date().getTime() - storedDate.getTime()”时执行需要检索经过的时间。您将以毫秒为单位收到时间
  • 抱歉,我可以在任何地方调用“new Date()”这个javascript方法吗?这个方法从何而来?
  • 您能否留下答案,以便我选择它作为解决方案。干杯

标签: angular angular5


【解决方案1】:

测量时间的最简单方法是使用 js Date 类。请参考下一个例子:

var date = new Date(); // Generate a timestamp when you need to start countdown
... do some calculation ...
console.log(new Date().getTime() - date.getTime()); // When you need, subtract saved date from new one

您将以毫秒为单位收到时间。

【讨论】:

    【解决方案2】:

    ng2-simple-timer 更新并支持毫秒。

    https://www.npmjs.com/package/ng2-simple-timer#newtimerhr

    newTimerHR

    创建具有可选客户延迟的高分辨率计时器。单位为毫秒。

    newTimerHR(name: string, msec: number, delay: number = 0): boolean

    newTimerHR 将创建计时器name 并每隔“数”毫秒打勾。多次创建同名定时器没有副作用。

    delay:如果设置为 X,将延迟第一个滴答声 X 毫秒。

    如果计时器 name 存在,则返回 false

    this.st.newTimerHR('5ms', 5);
    this.st.newTimerHR('5ms', 5, 10);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-07
      • 1970-01-01
      • 1970-01-01
      • 2012-11-24
      • 2021-03-12
      • 1970-01-01
      相关资源
      最近更新 更多