UNPKG

xxm-test-js

Version:
40 lines 1.29 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.TimeThread = void 0; /** * 时间线程类,用于定时触发事件 * * 使用场景:当需要在特定时间间隔内重复执行某些操作时,可以使用此类。 * 例如,定时更新页面上的时钟显示、定时发送数据请求等。 * * @param {number} intervalTime - 时间间隔(毫秒),表示事件触发的时间间隔。 * * @returns {TimeThread} - 返回一个 TimeThread 实例,可用于控制事件的启动、暂停和终止。 */ class TimeThread { constructor(intervalTime) { this.intervalId = null; this.intervalTime = intervalTime; } start() { if (!this.intervalId) { const eventName = 'clock'; window.CLOCK_EVENT = eventName; const clockEvent = new CustomEvent(eventName); this.intervalId = setInterval(() => { window.dispatchEvent(clockEvent); }, this.intervalTime); } } pause() { if (this.intervalId) { clearInterval(this.intervalId); this.intervalId = null; } } terminate() { this.pause(); } } exports.TimeThread = TimeThread; //# sourceMappingURL=TimeThread.js.map