Live Chat
Monday - Friday 8am - 6pm EST Chat Now
Contact Us
Monday - Friday 8am - 8pm EST 1-800-268-7737 Other Contact Options

Cart () Loading...

    • Quantity:
    • Delivery:
    • Dates:
    • Location:


Advanced AngularJS

Advanced aspects in AngularJS application development.

GK# 7279

Course Overview


AngularJS is an open source JavaScript based web development framework maintained by Google. AngularJS extends HTML and supports the creation of modern, dynamic, single-page applications that run in client browsers. This path of courses covers advanced aspects in AngularJS application development, from handling data on the client side, to AngularJS animations, and securing AngularJS applications.


  • Delivery Format:
  • Date:
  • Location:
  • Access Period:


What You'll Learn

  • Working with Data in AngularJS
  • AngularJS Security Considerations
  • AngularJS and TypeScript
  • AngularUI Companion Frameworks
  • AngularUI Utilities and Modules


Viewing outline for:

On-Demand Outline

Working with Data in AngularJS

  • Describe how to detect network status changes in an AngularJS application
  • Install the offline.js library in an AngularJS application
  • Use the offline.js library to detect when the network changes from an AngularJS application
  • Use the offline.js simulator to test how an AngularJS responds to network changes
  • Describe the different options for caching AngularJS applications
  • Create an HTML5 AppCache manifest file
  • Configure an HTML5 AppCache manifest to always load certain resources from the network
  • Configure fallbacks in the HTML5 AppCache manifest that can be used when specific paths are unavailable
  • Reliably update files identified in the AppCache manifest
  • Install angular-cache and use it to create a new cache
  • Store data and retrieve stored data from an angular-cache cache
  • Remove data from an angular-cache cache
  • Use an angular-cache cache in conjunction with the $HTTP service
  • Describe the different options for persisting AngularJS data in the client
  • Detect whether a client browser supports IndexedDB
  • Store AngularJS data in a client browser using local storage
  • Retrieve local storage data in an AngularJS application
  • Store AngularJS data in a client browser using IndexedDB
  • Retrieve IndexedDB stored data in an AngularJS application
  • Recognize how to work with data models in AngularJS using js-data-angular
  • Install and configure the js-data-angular script file into an AngularJS application
  • Use the DSHttpAdapter to access data
  • Use the DSLocalStorageAdapter to access data
  • Create AngularJS applications that can work with offline data

AngularJS Security Considerations

  • Describe what are bearer tokens and how to use them for authentication in an AngularJS app
  • Receive and store bearer token in the DOM
  • Send a bearer token to be used for authenticating requests generated by an AngularJS application
  • Use cookies to persist identity through page reloads
  • Use HTML5 storage to persist identity through page reloads, and recognize the benefits of this approach as opposed to a cookie-based approach
  • Describe the roles of AngularJS, a client-side framework, and a server in authorizing requests
  • Recognize how assuming AngularJS can implement real authorization leaves an application vulnerable to attack
  • Recognize what obfuscation means and where it comes into play in a security context
  • Use Uglify.js to minify and compress an AngularJS application
  • Use tools to reverse the effects of minification of an AngularJS application
  • Recognize what a Cross-Site Scripting or XSS attack may look like and how AngularJS protects against these
  • Distinguish between secure and insecure cookies and recognize why an AngularJS application that uses cookies for identity persistence should have this cookie secure
  • Recognize what a Cross-Site Request Forgery or CSRF attack looks like and how AngularJS may be vulnerable
  • Recognize how implementing Anti-Forgery Tokens can protect against Cross-Site Request Forgery or CSRF attacks
  • Use ngSanitize in AngularJS to allow whitelisted HTML to be rendered
  • Disable string contextual escaping in AngularJS to allow a script to be executable
  • Use bearer tokens to authenticate AngularJS requests with the server

AngularJS and TypeScript

  • Describe the TypeScript language and its purpose
  • Set up Visual Studio 213 to provide maximum TypeScript development support
  • Differentiate between normal JavaScript functions and TypeScript functions and identify integrated development environment or IDE errors when incorrectly defining TypeScript functions
  • Define TypeScript classes for use
  • Define TypeScript interfaces for use
  • Install AngularJS dependencies for working with TypeScript and link to script files in index.html
  • Add reference information to TypeScript files to identify declaration files to be used
  • Define a TypeScript module in app.ts and define an AngularJS app module within it
  • Use a TypeScript class to provide configuration for an AngularJS app
  • Use TypeScript to add a run block to an AngularJS app
  • Use TypeScript to add values to an AngularJS app
  • Use TypeScript to add constants to an AngularJS app
  • Extend the ng.IScope interface to add custom scope properties
  • Create and use a TypeScript class that represents an AngularJS controller
  • Create AngularJS services using TypeScript
  • Create AngularJS factories using TypeScript
  • Create AngularJS providers using TypeScript
  • Create AngularJS directives using TypeScript
  • Configure routes in an AngularJS app using TypeScript
  • Request remote resources using AngularJS and TypeScript
  • Install dependencies for writing Jasmine tests using TypeScript
  • Set up the Karma test runner for running tests
  • Create and execute unit tests in an AngularJS application built using TypeScript
  • Create AngularJS applications using TypeScript

AngularUI Companion Frameworks

  • Add AngularUI Accordion and Carousel objects to AngularJS apps
  • Add AngularUI alerts and button objects to AngularJS apps
  • Add AngularUI DatePicker and TimePicker objects to AngularJS apps
  • Add AngularUI modal and popover objects to AngularJS apps
  • Add AngularUI pagination to AngularJS apps
  • Add AngularUI progressbar and rating objects to AngularJS apps
  • Add AngularUI tabs and tooltip objects to AngularJS apps
  • Use AngularUI typeahead features in an AngularJS app
  • Use ng-grid to display data in a grid format in AngularJS
  • Use specific display names for grid columns
  • Rearrange grid data by groups in an AngularJS app
  • Specify templates to be used for grid cells
  • Specify templates to be used for grid rows
  • Specify themes that can be used to alter grid display in AngularJS apps
  • Create a grid that can page through data supplied from a server-side data source
  • Create a master/detail layout in an AngularJS app
  • Configure a grid to have selectable cells
  • Configure a grid to have editable cells once selected
  • Configure a grid to have selectable rows
  • Configure a grid to support column pinning
  • Rename third-party directives in AngularJS apps
  • Add a customizable select box functionality in AngularJS apps
  • Describe AngularJS UI-Router and how it functions as an alternative to ngRoute in AngularJS apps
  • Install UI-Router and configure an AngularJS app with a ui-view div and ui-sref links
  • Configure an AngularJS application with states
  • Use nested views in an AngularJS app
  • Use multiple views in an AngularJS app
  • Create an AngularJS app that routes using UI-Router

AngularUI Utilities and Modules

  • Format strings by substituting tokens
  • Convert strings to alternative formats
  • Mask inputs with custom masks
  • Use an icon or link that can empty an input element
  • Add multiple upload functionalities to an AngularJS app
  • Create and use custom validation expressions
  • Highlight block text in an AngularJS app
  • Toggle an indeterminate property of a checkbox
  • Create and configure unlimited length scrolling lists
  • Fix elements to the page at specific points
  • Utilize extra control over how items are hidden and displayed in an AngularJS app
  • Include fragments in an AngularJS app
  • Bind callbacks to events not natively supported by AngularJS
  • Call jQuery functions and plugins directly from AngularJS
  • Bind events to specific key presses in an AngularJS app
  • Detect and take action when specific routes are matched
  • Remove duplicates from an array of items
  • Add drag and drop sortable lists to an AngularJS app
  • Add a CodeMirror editor in an AngularJS app
  • Add an Ace editor in an AngularJS app
  • Add a TinyMCE editor in an AngularJS app
  • Add a FullCalendar component in an AngularJS app
  • Implement elements from AngularUI in an AngularJS app

Who Should Attend


Web developers with a basic understanding of developing AngularJS apps who wish to learn more advanced concepts related to AngularJS.

Course Delivery

This course is available in the following formats:


Train at your own pace with 24/7 access to courses that help you acquire must-have technology skills.

Request this course in a different delivery format.