Server (nodeJs/express):
let app = require('express')(); let http = require('http').Server(app); let io = require('')(http); ('connection', (socket) => { ('user connected'); ('disconnect', function(){ ('user disconnected'); }); ('add-message', (message) => { ('message', {type:'new-message', text: message}); }); }); (5000, () => { ('started on port 5000'); });
Client, create a ChatService
import { Subject } from 'rxjs/Subject'; import { Observable } from 'rxjs/Observable'; import * as io from '-client'; export class ChatService { private url = 'http://localhost:5000'; private socket; sendMessage(message){ ('add-message', message); } getMessages() { let observable = new Observable(observer => { = io(); ('message', (data) => { (data); }); return () => { (); }; }) return observable; } }
ChatComponent
import { Component, OnInit, OnDestroy } from '@angular/core'; import { Control } from '@angular/common'; import { ChatService } from './'; @Component({ moduleId: , selector: 'chat', template: `<div *ngFor="let message of messages"> {{}} </div> <input [(ngModel)]="message" /><button (click)="sendMessage()">Send</button>`, providers: [ChatService] }) export class ChatComponent implements OnInit, OnDestroy { messages = []; connection; message; constructor(private chatService:ChatService) {} sendMessage(){ (); = ''; } ngOnInit() { = ().subscribe(message => { (message); }) } ngOnDestroy() { (); } }
The above is all the content of this article. I hope it will be helpful to everyone's study and I hope everyone will support me more.