【发布时间】:2019-06-21 01:30:58
【问题描述】:
我用socket.io做了一个聊天应用
我想制作一个功能,可以在其他用户输入消息时告诉某人。最初我的代码正在运行,但由于某种原因它停止了。聊天功能很好用。
客户端
//Query DOM
var message = document.getElementById('message');
handle = document.getElementById('handle'),
btn = document.getElementById('send'),
output = document.getElementById('output'),
feedback = document.getElementById('feedback');
//emit Events
btn.addEventListener('click', function(){
socket.emit('chat', {
message: message.value,
handle: handle.value
});
});
message.addEventListener('keypress', function(){
socket.emit('typing', handle.value);
});
//Listen for events
socket.on('chat', function(data){
feedback.innerHTML = "";
output.innerHTML += '<p><strong>' + data.handle + ' </strong>' + data.message + ' </p>';
});
// socket.on('typing', function(data){
// feedback.innerHTML = '<p><em>' + data + ' is typing a message....</em></p>';
// });
socket.on('typing', function(data){
if (data) {
feedback.innerHTML = '<p><em>' + data + ' is typing...</em></p>';
} else {
feedback.innerHTML = ''
}
});
服务器端
var io = socket(server);
io.on('connection', function(socket){
console.log('Made socket connection', socket.id);
socket.on('chat', function(data) {
io.sockets.emit('chat', data);
});
});
【问题讨论】:
-
你知道,第一个是客户端代码,第二个是服务器端。