加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
socket.js 1.28 KB
一键复制 编辑 原始数据 按行查看 历史
码尚 提交于 2020-04-05 21:25 . feat('项目的页面完善')
// 封装webSocket
export default {
// 保证项目中只有一个socket实例
ws: null,//websocket实例
init(config, onMessage, onError) {
// console.log(config)
if (!this.ws) {
// 不存在ws,则实例化webSocket,ws://39.101.193.187连接谁,是谁跟我建立通讯
this.ws = new WebSocket(`ws://39.101.193.187:3030/${config.user}`)
}
// 客户端接收消息
console.log('jkjk', onMessage)
this.ws.onmessage = event => {
console.log('nn', event.data)
let message = JSON.parse(event.data);
onMessage && onMessage(message); // 接收到消息触发的回调
};
// 出错
this.ws.onError = error => {
onError && onError(error)
}
// 连接关闭
this.ws.onclose = () => {
this.ws = null;
console.log("关闭")
}
},
// 客户端发送消息
send(msgObj) {
// 发送消息的时候触发该函数
console.log('msgObj', msgObj)
//添加状态判断,当为OPEN时,发送消息
console.log(this.ws)
if (this.ws.readyState == 1) {
this.ws.send(JSON.stringify(msgObj));
} else {
// 重新连接
}
}
}
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化