angular中使用Socket.io实例代码

前端之家收集整理的这篇文章主要介绍了angular中使用Socket.io实例代码前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

服务端(nodeJs/express):

io.on('connection',(socket) => {
console.log('user connected');

socket.on('disconnect',function(){
console.log('user disconnected');
});

socket.on('add-message',(message) => {
io.emit('message',{type:'new-message',text: message});
});
});

http.listen(5000,() => {
console.log('started on port 5000');
});

客户端,创建一个ChatService

export class ChatService {
private url = 'http://localhost:5000';
private socket;

sendMessage(message){
this.socket.emit('add-message',message);
}

getMessages() {
let observable = new Observable(observer => {
this.socket = io(this.url);
this.socket.on('message',(data) => {
observer.next(data);
});
return () => {
this.socket.disconnect();
};
})
return observable;
}
}

ChatComponent

@Component({
moduleId: module.id,selector: 'chat',template: `<div *ngFor="let message of messages">
{{message.text}}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程之家。

猜你在找的JavaScript相关文章