Nativescript定时器模块与JS setInterval的区别

Difference between Nativescript timer module and JS setInterval

我正在处理一个使用 setInterval 函数的个人项目。我注意到 Nativescript 有 'timer' 模块和 setInterval 并将其实现到我的项目中。

每次我想在我的应用程序中使用 setInterval() 时是否值得导入 Nativescript 计时器模块,或者我可以只使用 Javascript setinterval() 代替吗?

代码示例(angular 2 with typescript):

import { setInterval, clearInterval } from 'timer'

/* skip some code */

private setInterval = setInterval;
private clearInterval = clearInterval;

/* skip some code */

time() {
  this.interval = this.setInterval(() => {
   this.duration = this.clock.formatTime(time)
  }, 1)
}

来源:http://docs.nativescript.org/angular/cookbook/timer

附带说明一下,上面的方法是实现定时器模块的正确方法吗?到目前为止,我唯一的经验是 Angular 2 - Nativescript 教程,带有颜色模块,但定时器模块略有不同。

计时器模块抽象了本机平台计时系统。如果您查看 source here for the Android version,您会注意到使用了原生的 classes/methods。至于命名 setIntervalclearTimeout 等,这正是 NativeScript 团队选择调用这些方法的方式。我假设让 javascript 开发人员更容易记住函数的作用。在您的 NS 应用程序中,我会默认使用 timer 模块而不是 JS timeouts/intervals,但这是我的意见。

至于导入,你的TS代码看起来不错。