Book Image

Advanced Express Web Application Development

By : Andrew Keig
Book Image

Advanced Express Web Application Development

By: Andrew Keig

Overview of this book

Building an Express application that is reliable, robust, maintainable, testable, and can scale beyond a single server requires a bit of extra thought and effort. Express applications that need to survive in a production environment will need to reach out to the Node ecosystem and beyond, for support.You will start by laying the foundations of your software development journey, as you drive-out features under test. You will move on quickly to expand on your existing knowledge, learning how to create a web API and a consuming client. You will then introduce a real-time element in your application.Following on from this, you will begin a process of incrementally improving your application as you tackle security, introduce SSL support, and how to handle security vulnerabilities. Next, the book will take you through the process of scaling and then decoupling your application. Finally, you will take a look at various ways you can improve your application's performance and reliability.
Table of Contents (14 chapters)
Advanced Express Web Application Development
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Feature: Edit a project


Let's add an edit project form for our feature Edit a project. It consists of a text box for the project name a save and cancel button. Clicking on save will PUT the project to our Express server; clicking on cancel closes the form. We will use the same handlebars template we used for adding a project. In order to make RepositoryListView editable, we will need to introduce the concept of an edit state. We have called editMode.

Let's make some changes to projectView. We start by adding a new event edit to the events hash, which calls an edit function. We change our repository method by passing a new arg.editMode to event_aggregator, which will inform our RepositoryListView that it is in edit mode.

The edit method, which displays our project formTemplate, populated with our project model data calls the repository method with editMode set to false, informing RepositoryListView that it is in edit mode. Finally, we update our add, cancel, and save methods; calls in these...