28 lines
579 B
JavaScript
28 lines
579 B
JavaScript
// websocketManager.js
|
|
import WsRequest from '@/common/websocket.js';
|
|
|
|
let globalWs = null;
|
|
|
|
const initWs = (url, options) => {
|
|
// 如果已经有 WebSocket 实例,直接返回
|
|
if (globalWs) return globalWs;
|
|
|
|
globalWs = new WsRequest(url, options);
|
|
return globalWs;
|
|
};
|
|
|
|
const connectWs = () => {
|
|
if (globalWs) {
|
|
globalWs.reconnectAttempts = 0; // 重置重连计数
|
|
globalWs.open(); // 打开 WebSocket 连接
|
|
}
|
|
};
|
|
|
|
const closeWs = () => {
|
|
if (globalWs) {
|
|
globalWs.close(); // 关闭 WebSocket 连接
|
|
}
|
|
};
|
|
|
|
export { initWs, connectWs, closeWs };
|