const lib = require("./Library"); window.server = { matchCallback:null, eventNodeArr:[], login(openid,name,avatarUrl,gender,callback) { if(openid ==='' || name ==='' ||avatarUrl ==='' ||gender ==='' ||callback == null) return; let Self = this; // this.ws = new WebSocket("ws://localhost:3000"); // this.ws = new WebSocket("ws://121.4.59.141:3000/node/"); // this.ws = new WebSocket("ws://www.yuyekeji.cn:3000/node/"); // this.ws = new WebSocket("ws://www.yuyekeji.cn:3000/"); this.ws = new WebSocket("ws://192.168.31.211:3000"); this.ws.onopen = function () { //当WebSocket创建成功时,触发onopen事件 console.log("WebSocket建立成功"); console.log("open"); let player_info = {}; player_info.type = "login"; player_info.openid = openid; player_info.name = name; player_info.avatarUrl = avatarUrl; player_info.gender = gender; // console.log('player_info=',player_info) Self.ws.send(JSON.stringify(player_info)); //将消息发送到服务端 callback(); } this.ws.onmessage = function (e) { //当客户端收到服务端发来的消息时,触发onmessage事件,参数e.data包含server传递过来的数据 let data_json = JSON.parse(e.data); if(data_json.type === 'match') { Self.matchCallback(data_json.roomId,data_json.openid,data_json.name,data_json.avatarUrl,data_json.gender); } else if(data_json.type === 'onRecvLockStep') { Self.emmitEvent('onRecvLockStep',data_json); } } this.ws.onclose = function (e) { //当客户端收到服务端发送的关闭连接请求时,触发onclose事件 console.log("close"); } this.ws.onerror = function (e) { //如果出现连接、处理、接收、发送数据失败的时候触发onerror事件 console.log(error); } }, on(eventName,callback){ let aMap = {}; aMap.eventName = eventName; aMap.callback = callback; this.eventNodeArr.push(aMap); }, match(openid,gameMode,callback) { if(openid ==='' || callback == null) return; let obj = {}; obj.type = 'match'; obj.openid = openid; obj.gameMode = gameMode; this.matchCallback = callback; this.ws.send(JSON.stringify(obj)); }, cancel() { this.ws.close(); }, emmitEvent(eventName,data){ for(let i=0;i