From 5ac4164173a9a22183b046efbd0fcd26496adea6 Mon Sep 17 00:00:00 2001 From: Luk Lu Date: Mon, 1 Jun 2020 13:13:25 +0800 Subject: [PATCH] =?UTF-8?q?[index.js]=20=E5=A2=9E=E5=8A=A0=20formatDate=20?= =?UTF-8?q?=E6=96=B9=E6=B3=95=EF=BC=9B[unisocket.js]=20event=20=E6=94=B9?= =?UTF-8?q?=E5=90=8D=20skevent?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- index.js | 29 +++++++++++++++++++++++++++++ unisocket/unisocket.js | 20 ++++++++++++++------ 2 files changed, 43 insertions(+), 6 deletions(-) diff --git a/index.js b/index.js index 82f868f..a1cf375 100644 --- a/index.js +++ b/index.js @@ -93,4 +93,33 @@ module.exports = { } }, + formatDate(date, format){ + if (!(date instanceof Date)){ + date = new Date(date) + } + if (!date.toJSON()) { + date = new Date() + } + + format = (format && typeof format==='string') + ? format + : 'yyyy-mm-dd HH:MM:SS' + let o = { + 'm+': date.getMonth() + 1, //月份 + 'q+': Math.floor((date.getMonth() + 3) / 3), //季度 + 'd+': date.getDate(), //日 + 'H+': date.getHours(), //小时 + 'M+': date.getMinutes(), //分 + 'S+': date.getSeconds(), //秒 + 's': date.getMilliseconds() //毫秒 + } + if (/(y+)/.test(format)) + format = format.replace(RegExp.$1, (`${date.getFullYear()}`).substr(4 - RegExp.$1.length)) + for (var k in o){ + if (new RegExp(`(${k})`).test(format)) + format = format.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : ((`00${o[k]}`).substr((`${o[k]}`).length))) + } + return format + }, + } \ No newline at end of file diff --git a/unisocket/unisocket.js b/unisocket/unisocket.js index e021fb0..16e735a 100644 --- a/unisocket/unisocket.js +++ b/unisocket/unisocket.js @@ -31,8 +31,8 @@ module.exports={ my.socket.onMessage(({data})=>{ // 在这里统一分发消息 try { let dataObj = JSON.parse(data) - console.log('WebSocket onMessage for event: ', dataObj.event) - let listeners = my.listeners[dataObj.event] || [] + console.log('WebSocket onMessage for skevent: ', dataObj.skevent) + let listeners = my.listeners[dataObj.skevent] || [] for (let listener of listeners) { listener(dataObj) } @@ -52,12 +52,20 @@ module.exports={ delete my.reconnecting }, 2000) }, - addListener(event, listener){ - if (Array.isArray(my.listeners[event]) && typeof(listener)==='function') { - my.listeners[event].push(listener) + addListener(skevent, listener){ + if (Array.isArray(my.listeners[skevent]) && typeof(listener)==='function') { + my.listeners[skevent].push(listener) }else { - my.listeners[event]=[listener] + my.listeners[skevent]=[listener] } return this + }, + sendObject(data){ + if (typeof(data)!=='string'){ + data=JSON.stringify(data) + } + if (my.socket && my.socket.readyState===my.socket.OPEN){ + my.socket.send({data}) + } } } \ No newline at end of file