服务器端反应和插座io的私人信息不工作
io.on('connection', function(socket){
socket.on('user joined', function(data){
socket.join(data.username);
});
socket.on('disconnect', function(){
console.log('user disconnected');
});
socket.on('send private', function(data){
console.log('sending private', data);
io.in(data.to).emit('pmessage',data);
})
});
客户端
handleSubmit(){
var newMSG= {
to: this.state.selectedFriend,
from: this.props.user.username,
message: 'new message yay'
}
this.state.socket.emit('send private', newMSG);
}
componentDidMount(){
var self = this;
self.state.socket.on('pmessage', function(data){
console.log('receiving private!', data);
document.getElementById('myprivates').innerHTML= "<p><em>"+data.message+"</em></p>";
})
}
我不能让“pmessage”发出事件来触发,所以我想我”没有做io.in()部分的权利。我试图使用用户的用户名实现私人通信,但我找不到明确的例子或文档。我跟着套接字io上的文档,所以我应该关闭或工作,但事实并非如此。
selectedFriend是用户名*和data.username也是一个用户名,只是为了澄清 –