PacktLib: Mastering Web Application Development with AngularJS

Mastering Web Application Development with AngularJS


About the Authors


About the Authors

About the Reviewers


Angular Zen

Meet AngularJS

AngularJS crash course

AngularJS and the rest of the world


Building and Testing

Introducing the sample application

Build system

Organizing files and folders

AngularJS modules and files

Automated testing


Communicating with a Back-end Server

Making XHR and JSONP requests with $http

The promise API with $q

The promise API with $http

Communicating with RESTful endpoints

Using advanced features of $http

Testing code that interacts with $http


Displaying and Formatting Data

Referencing directives

Displaying results of expression evaluation

Conditional display

Rendering collections with the ngRepeat directive

DOM event handlers

Working effectively with DOM-based templates

Handling model transformations with filters


Creating Advanced Forms

Comparing traditional forms with AngularJS forms

Creating a User Information Form

Understanding the input directives

Looking inside ngModel data binding

Validating AngularJS forms

Nesting forms in other forms

Repeating subforms

Handling traditional HTML form submission

Resetting the User Info form


Organizing Navigation

URLs in single-page web applications

Using the $location service

Using built-in AngularJS routing services

Limitations of the $route service

Routing-specific patterns, tips, and tricks


Securing Your Application

Providing server-side authentication and authorization

Securing partial templates

Stopping malicious attacks

Adding client-side security support

Supporting authentication and authorization on the client

Preventing navigation to secure routes


Building Your Own Directives

What are AngularJS directives?

Following the directive compilation life-cycle

Writing unit tests for directives

Defining a directive

Styling buttons with directives

Understanding AngularJS widget directives

Creating a custom validation directive

Creating an asynchronous model validator

Wrapping the jQueryUI datepicker directive


Building Advanced Directives

Using transclusion

Creating and working with transclusion functions

Understanding directive controllers

Taking control of the compilation process


Building AngularJS Web Applications for an International Audience

Using locale-specific symbols and settings

Handling translations

Patterns, tips, and tricks


Writing Robust AngularJS Web Applications

Understanding the inner workings of AngularJS

Performance tuning – set expectations, measure, tune, and repeat

Performance tuning of AngularJS applications


Packaging and Deploying AngularJS Web Applications

Improving network-related performance

Optimizing the landing page

Supported browsers