Real time updates on the Notes home page

The first thing we'll do with Socket.IO is change the Notes home page to automatically update the list of notes as notes are edited or deleted. It means a little bit of work in routes/index.js and views/index.ejs, and a lot of work in the Notes model.

Where the Notes model so far has been a passive repository of documents, it now needs to emit events to any interested parties. This is the listener pattern, and, in theory, there will be code that is interested in knowing when notes are created, edited, or destroyed. At the moment, we'll use that knowledge to update the Notes home page, but there are many potential other uses of that knowledge.

The Notes model as an EventEmitter class

The EventEmitter is the ...

Get Node.js Web Development - Third Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.