cc.Class({ extends: cc.Component, properties: { myName:cc.Label, messageLabel:cc.Label }, start () { // 初始化 this.my_name = window.my_name; this.myName.string = '用户:'+this.my_name; this.user_name = ''; this.message = ''; let messageLabel = this.messageLabel; // 创建服务器 this.ws = new WebSocket("ws://127.0.0.1:3000"); // this.ws = new WebSocket("ws://81.70.235.181:3000"); //连接服务器成功后的回调 this.ws.onopen = function (event) { // console.log("已连接."); messageLabel.string = "已连接到服务器" this.ws.send('{"name":"'+this.my_name+'","type":"login","user_name":"","message":""}'); }.bind(this); //接收到服务器消息的回调 this.ws.onmessage = function (event) { // console.log("收到消息: " + event.data); let data = JSON.parse(event.data); messageLabel.string = '收到“'+data.name+'”的消息:\n'+data.message; }.bind(this); // 发生错误 this.ws.onerror = function (event) { console.log("发生错误"); }.bind(this); // 已关闭 this.ws.onclose = function (event) { console.log("已关闭"); }.bind(this); }, // 发送消息给指定用户 sendUser(){ console.log('发送给'+this.user_name) console.log(this.message) this.ws.send('{"name":"'+this.my_name+'","type":"user","user_name":"'+this.user_name+'","message":"'+this.message+'"}'); }, // 发送消息给所有人 sendAll(){ this.ws.send('{"name":"'+this.my_name+'","type":"all","user_name":"","message":"'+this.message+'"}'); }, // 输入发消息送对象的名字 onTextChangedUserName: function(text, editbox, customEventData) { this.user_name = text; }, // 输入发消息送的消息 onTextChangedMessage: function(text, editbox, customEventData) { this.message = text; } });