Book Image

Advanced Node.js Development

By : Andrew Mead
2 (1)
Book Image

Advanced Node.js Development

2 (1)
By: Andrew Mead

Overview of this book

Advanced Node.js Development is a practical, project-based book that provides you with all you need to progress as a Node.js developer. Node is a ubiquitous technology on the modern web, and an essential part of any web developer’s toolkit. If you're looking to create real-world Node applications, or you want to switch careers or launch a side-project to generate some extra income, then you're in the right place. This book was written around a single goal: turning you into a professional Node developer capable of developing, testing, and deploying real-world production applications. There's no better time to dive in. According to the 2018 Stack Overflow Survey, Node is in the top ten for back-end popularity and back-end salary. This book is built from the ground up around the latest version of Node.js (version 9.x.x). You'll be learning all the cutting-edge features available only in the latest software versions. This book delivers advanced skills that you need to become a professional Node developer. Along this journey you'll create your own API, you'll build a full real-time web app and create projects that apply the latest Async and Await technologies. Andrew Mead maps everything out for you in this book so that you can learn how to build powerful Node.js projects in a comprehensive, easy-to-follow package designed to get you up and running quickly.
Table of Contents (17 chapters)
Title Page
Copyright and Credits
Packt Upsell
Contributors
Preface
Index

Wiring up user list


In this section we're going to start wiring up that users class we created, and to kick things off, we're going to wire up the People list, which means that we need to do something when a user joins, and when a user leaves. We want to keep that list up to date and every time we update it, we want to give a fresh copy of the list to the client. This means that the server is going to need to emit an event to the client, the client is then going to listen for that event and it's going to update the markup.

Now we can view exactly where this is going to happen by starting up the server with the following command:

nodemon server/server.js

Then, I'm going to head over to localhost:3000 and open up a chat page. I'm going to enter Andrew for Display name and LOTR for Room name. Now once we're in, we have our People list, currently it should show us, since we are in the room, and when a new user joins it should automatically show that user:

Right now none of this is happening, but...