UNPKG

socket-heart

Version:

基于ES6的class 来封装的WebSocket,包含心跳,断线重连。

33 lines (30 loc) 644 B
/** * 心跳基类 */ export class Heart { HEART_TIMEOUT = null // 心跳计时器 SERVER_HEART_TIMEOUT = null // 心跳计时器 constructor (timeout = 5000) { this.timeout = timeout } // 重置 reset () { clearTimeout(this.HEART_TIMEOUT) clearTimeout(this.SERVER_HEART_TIMEOUT) return this } /** * 启动心跳 * @param {Function} cb 回调函数 */ start (cb) { this.HEART_TIMEOUT = setTimeout(() => { cb() this.SERVER_HEART_TIMEOUT = setTimeout(() => { cb() // 重新开始检测 this.reset().start(cb) }, this.timeout) }, this.timeout) } }