繁体   English   中英

打字稿错误:setInterval - 类型“计时器”不可分配给类型“数字”

[英]Typescript Error: setInterval - Type 'Timer' is not assignable to type 'number'

我有以下代码:

let onSizeChangeSetInterval = setInterval(() => {...}, 30);

当我编译此代码时,出现以下错误:

src/components/popover/popover.component.ts(98,17) 中的错误:错误 TS2322:“定时器”类型不可分配给“数字”类型。 src/modules/forms-ui/formly/types/daterange/picker.daterange.component.ts(186,9): 错误 TS2322: 类型 'Timer' 不可分配给类型 'number'。

使用window.setInterval代替

通过查看error TS2322它看起来像是TypeScript错误,而不是JavaScript错误。 基本上,您尝试将类型数字变量转换为计时器1。

你能代替吗?

let onSizeChangeSetInterval:NodeJS.Timer;
onSizeChangeSetInterval = setInterval(() => {...}, 30);

取自

http://evanshortiss.com/development/nodejs/typescript/2016/11/16/timers-in-typescript.html

使用ReturnType

let onSizeChangeSetInterval: ReturnType<typeof setInterval> | undefined;
onSizeChangeSetInterval = setInterval(() => {...}, 30);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM