以下代码仅发出一次数据。我不确定它是否会发出一次因为我认为数据没有从前端(角度2)正确发送到后端(nodeJs)。
chat.component.ts的前端代码:
ngOnInit() {
const sendData = {
username: this.username,
message: this.message
};
const socket = socketIo('http://localhost:3000');
socket.emit('chat message', {
username: 'sendData.username',
message: sendData.message
});
socket.on('chat message', function(msg){
const messageArea = document.getElementById('output');
messageArea.innerHTML +="<strong>" + socket.username + "</strong> : " + socket.message + "\n";
console.log(msg.username + 'lmemons');
});
}
后端代码:
io.on('connection', function(socket){
console.log('a user connected');
socket.on('disconnect', function(){
console.log('user disconnected');
});
socket.on('chat message', function(msg){
console.log('///////////////////////////////');
io.emit('chat message', msg.username + ': ' + msg.message);
console.log('--------------------------');
});
});
代码运行一次,由console.logs显示。它每次都只是未定义的。
我试过使用:
socket.on(&#39;聊天消息&#39;,功能(消息){...
以外的
io.on(&#39;连接&#39;,功能(套接字){
但是套接字错误,声称它未定义。
基本上我想将数据附加到每个所有连接的套接字上。文字区。
我正在使用此https://socket.io/get-started/chat/教程寻求帮助。