Getting Started with Knockout.js for .NET Developers
eBook - ePub

Getting Started with Knockout.js for .NET Developers

Andrey Akinshin

Share book
  1. 188 pages
  2. English
  3. ePUB (mobile friendly)
  4. Available on iOS & Android
eBook - ePub

Getting Started with Knockout.js for .NET Developers

Andrey Akinshin

Book details
Book preview
Table of contents
Citations

Frequently asked questions

How do I cancel my subscription?
Simply head over to the account section in settings and click on “Cancel Subscription” - it’s as simple as that. After you cancel, your membership will stay active for the remainder of the time you’ve paid for. Learn more here.
Can/how do I download books?
At the moment all of our mobile-responsive ePub books are available to download via the app. Most of our PDFs are also available to download and we're working on making the final remaining ones downloadable now. Learn more here.
What is the difference between the pricing plans?
Both plans give you full access to the library and all of Perlego’s features. The only differences are the price and subscription period: With the annual plan you’ll save around 30% compared to 12 months on the monthly plan.
What is Perlego?
We are an online textbook subscription service, where you can get access to an entire online library for less than the price of a single book per month. With over 1 million books across 1000+ topics, we’ve got you covered! Learn more here.
Do you support text-to-speech?
Look out for the read-aloud symbol on your next book to see if you can listen to it. The read-aloud tool reads text aloud for you, highlighting the text as it is being read. You can pause it, speed it up and slow it down. Learn more here.
Is Getting Started with Knockout.js for .NET Developers an online PDF/ePUB?
Yes, you can access Getting Started with Knockout.js for .NET Developers by Andrey Akinshin in PDF and/or ePUB format, as well as other popular books in Computer Science & Application Development. We have over one million books available in our catalogue for you to explore.

Information

Getting Started with Knockout.js for .NET Developers


Table of Contents

Getting Started with Knockout.js for .NET Developers
Credits
About the Author
About the Reviewers
www.PacktPub.com
Support files, eBooks, discount offers, and more
Why subscribe?
Free access for Packt account holders
Preface
What this book covers
What you need for this book
Who this book is for
Conventions
Reader feedback
Customer support
Downloading the example code
Errata
Piracy
Questions
1. Introduction to Knockout.js
Knockout.js overview
What is Knockout.js?
The best features
MVVM design pattern
Installing Knockout.js
Method 1 – official site
Method 2 – NuGet
Method 3 – CDNs
Method 4 – GitHub
Knockout.js fundamentals
Creating a View
Adding a ViewModel
Adding a data binding
Adding an observable
Subscribing to observables
Updating View in a forced way
Delaying and suppressing change notifications
Adding dynamic behavior
A binding diversity
Single and multiple bindings
Value representation
White spaces
Skipping the value
Useful links
Summary
2. Creating a Simple Knockout.js Application
Creating the Model, View, and ViewModel
Text and appearance bindings
The text binding
The html binding
The css binding
The style binding
The attr binding
The visible binding
Form fields bindings
The value binding
The click binding
The submit binding
The event binding
The checked binding
The enable and disable binding
The options binding
The selectedOptions binding
Control flow bindings
The foreach binding
The if and ifnot bindings
The with binding
Computed observables
Using a computed observable
Computed observable features
Observable arrays
Using an observable array
Adding to an observable array
Removing from an observable array
Manipulating an observable array
Summary
3. Integrating Knockout.js in ASP.NET MVC Applications
Creating an application without Knockout.js
Creating a new project
Adding models
Adding views
Adding the Controller
Running the application
Creating an application with Knockout.js
Motivation
Creating a new project
Adding models
Adding views
Adding the controller
Running the application
Summary
4. Creating a Web Application with Knockout MVC
Getting started with Knockout MVC
Motivation
When you should use Knockout MVC
Installation
Useful links
Working with the Hello World example in Knockout MVC
Adding the model
Adding the controller
Adding the view
Running the application
Under the hood
Developing a Knockout MVC application
Adding the model
Adding the controller
Adding the view
Running the application
Under the hood
Summary
5. Advanced Features of Knockout.js
Loading and saving JSON data
Converting data to JSON
Converting JSON to data
Introducing Knockout mapping
A manual mapping example
An automatic mapping example
Mapping in Knockout MVC
Mapping unique values
Partial mapping – create
Partial mapping – update
Partial mapping – ignore
Multiple mappings
Advanced mapping
Binding context
Custom bindings
Registering a new binding
Binding callbacks' parameters
A custom binding example 1 – slideVisible
A custom binding example 2 – hasFocus
Extending observables
Creating an extender
An extending observables example 1 – numeric
An extending observables example 2 – required
Custom functions
An example with array filtering
Different templating approaches
A simple named template
Template in the foreach mode
The foreach template with alias
Choosing a template dynamically
Summary
6. Advanced Features of Knockout MVC
Regions
The foreach region
The with region
The if region
Complex bindings
Sending parameters to the server
Inner computed properties
Multiple view models
Lazy loading
Writing user scripts
Summary
A. A Brief on Knockout MVC References and Features
Working with KnockoutContext
Basic data binding
Form objects
Nested contexts
Sending requests to the server
Adding user-defined scripts
Forming a model and using computed properties
Special addressing forms
Summary
Index

Getting Started with Knockout.js for .NET Developers

Copyright © 2015 Packt Publishing
All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews.
Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the author, nor Packt Publishing, and its dealers and distributors will be held liable for any damages caused or alleged to be caused directly or indirectly by this book.
Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information.
First published: May 2015
Production reference: 1200515
Published by Packt Publishing Ltd.
Livery Place
35 Livery Street
Birmingham B3 2PB, UK.
ISBN 978-1-78398-400-8
www.packtpub.com

Credits

Author
Andrey Akinshin
Reviewers
Dmitry Pavlov
Tim Stuyckens
Commissioning Editor
Taron Pereira
Acquisition Editors
Owen Roberts
Greg Wild
Content Development Editors
Akshay Nair
Rohit Kumar Singh
Technical Editor
Taabish Khan
Copy Editor
Adithi Shetty
Project Coordinator
Mary Alex
Proofreaders
Safis Editing
Paul Hindle
Indexer
Priya Sane
Production Coordinator
Nitesh Thakur
Cover Work
Nitesh Thakur

About the Author

Andrey Akinshin has a PhD in computer science, and he received a Microsoft MVP award in 2015. He works as a lead .NET Developer at Perpetuum Software and as a postdoctoral research fellow at the Weizmann Institute of Science. He is also the author and main contributor of the Knockout MVC library and has a wealth of experience in Knockout.js. He has experience in various IT areas, ...

Table of contents