UNPKG

@friendlyjesse/library

Version:

rollup + typescript 制作的工具函数函数库

55 lines (54 loc) 1.74 kB
import EventBus from './eventBus'; import { Options } from '../../typings'; /** * Socket 类 * @author Jesse <jessexinyu@foxmail.com> * @extends EventBus */ declare class Socket extends EventBus { private instance; private status; private heartbeat; private heartbeatShut; private url; private params; private reconnectCount; reconnectMax: number; reconnectTime: number; heartTimeout: number; logger: boolean; /** * 创建一个 socket 实例 * @param url - url * @param params - params * @param params.type - type * @param params.token - token * @param options - 可配置项 * @param {number} [options.reconnectMax = 10] - 最大重连数 * @param {number} [options.reconnectTime = 3000] - 重连间隔 * @param {number} [options.heartTimeout = 60000] - 心跳间隔 * @param {boolean} [options.logger = true] - 是否开启日志 */ constructor(url: string, params: Object, options?: Options); /** * 发送消息 * @param {Object/ArrayBuffer} data - 需要发送的内容 * @param {Function=} success - 接口调用成功的回调函数 * @param {Function=} fail - 接口调用失败的回调函数 * @param {Function=} complete - 接口调用结束的回调函数(调用成功、失败都会执行) */ send<T>(data: Object | ArrayBuffer, ...handlers: T[]): void; /** * 主动关闭 socket */ shut(): void; private init; private onOpen; private onClose; private onMessage; private reconnect; private heartbeatCheck; private heartbeatReset; private complete; } export default Socket;