Book Image

KnockoutJS by Example

By : Adnan Jaswal
Book Image

KnockoutJS by Example

By: Adnan Jaswal

Overview of this book

KnockoutJS By Example is a project-based guide that introduces the key features and concepts of knockout.js. It helps you create an application skeleton and a Hello World application. You will develop a To-Do list application that aims to show the basic features of knockout.js in action, such as data binding and observables, following which you will develop a dynamic online customer registration form that captures and validates customer information. This book will further walk you through developing a customer banking portal, which demonstrates the use of knockout.js with components such as navigation bars, tabs, carousels, master details view, panels, forms, and wizards. You will also discover how to use token-based authentication and authorization to secure the customer banking portal, and move on to creating an editable products grid with CRUD operations. Finally, you will explore how to use the Google Maps API with knockout.js. KnockoutJS By Example will not only leave you with a basic understanding of knockout.js fundamentals but also take you through some of the advanced features. It will help you get a web application up and ready instantly.
Table of Contents (17 chapters)
KnockoutJS by Example
Credits
About the Author
Acknowledgment
About the Reviewers
www.PacktPub.com
Preface
Index

Viewing the number of total and completed tasks


The sixth feature of our to-do application is to give the users the ability to view the number of total and completed tasks. We will do this by displaying this information after the tasks table. We will let the user know if no tasks exist in the task list, otherwise, we will display the number of total and competed tasks. This feature will demonstrate the built-in array methods, utility methods provided by Knockout, and computed observables.

Let's get started by displaying the total number of tasks in our tasks list. We can use the length property of the observable array to get the number of items it holds. We can access the length property of our tasks array like this:

ToDoList.tasks().length;

We can display the total number of tasks in our view by using the preceding code. To do this, add a row below the tasks table. Then, use the text data binding with a span element to display the total number of tasks. Your code should look similar to this...