home > training > ANGJS300: AngularJS End-to-End SPA Development

24 Student Comments

ANGJS300: AngularJS End-to-End SPA Development

$2,995 Interface Gold™

  • 4 Days
  • Taught by expert Dan Wahlin
  • ​​Promotional and package discounts may apply
Interested in scheduling a date for this course?
Request A Date
Register today - no risk!  No cancellation fees.  Full money back guarantee!
  • This field is for validation purposes and should be left unchanged.

Course Description

The course starts with an introduction to building Single Page Applications (SPA) and talks about the features AngularJS Version 1 provides. From there students learn about different aspects of the framework such as views and directives, controllers and routes, as well as factories and services. Along the way, different debugging techniques and tools are discussed, how different AngularJS components can be customized and shared with other components, and different JavaScript patterns that can be applied to applications to make them more maintainable. By the end of the class students will have walked through the process of building a Single Page Application (SPA) from end-to-end using AngularJS and be ready to apply that knowledge to applications they need to build at work.


1. AngularJS JumpStart

  • Introduction to Single Page Applications
  • AngularJS and SPAs
  • Data Binding, Directives, and Filters
  • Views, Controllers and Scope
  • Modules, Routes and Factories

2. The Customer Manager Application

  • Application Overview
  • Application Technologies
  • Application Structure
  • Node.js/Express/MongoDb
  • Web API/Entity Framework/SQL Server

3. Creating Modules and Services

  • The customerManager Module
  • Customer Manager Factory/Service Overview
  • The customersService
  • Making Ajax Calls with $http
  • The authService
  • The dataService Factory and BreezeJS

4. Defining Routes

  • Adding the ngRoute Dependency
  • Configuring Application Routes with $routeProvider
  • Defining Route Parameters
  • Adding ng-view
  • Securing Client-Side Routes

5. Application Controllers

  • AngularJS Controller Techniques
  • The Scope Life Cycle
  • Application Controllers

6. Navbar Controller and View

  • Navbar Functionality
  • The NavbarController
  • The Navbar View and Directives

7. Login Controller and View

  • Login Functionality
  • The LoginController
  • The Login View and Directives


8. Customers Controller and View

  • Customers View Functionality
  • The CustomersController
  • The Customers View and Directives
  • Paging Customers
  • Filtering Customers
  • Switching Display Modes


9. Creating Custom Directives

  • The Role of Directives
  • Creating Custom Directives
  • Isolate Scope
  • Simplifying Code with a Directive


10. Bonus - Unit Testing

  • AngularJS Unit Testing features
  • Using Karma and Jasmine
  • Creating a Test Suite and Specs
  • Using ngMock, beforeEach() and Dependency Injection
  • Mocking Objects


11. Bonus - Animations

  • Animation Overview
  • The ngAnimate Module
  • Defining Animations in CSS
  • Referencing Animation Classes



This course is designed for JavaScript developers that are looking to build Single Page Applications using AngularJS.


Attendees must be comfortable working with JavaScript to take this class. A minimum of 6-months of hands-on JavaScript experience is recommended to get the most out of the course.

Before attending this course, students should have completed the following course or have equivalent experience.
JS275: JavaScript Programming

What You Will Learn

Upon completion of this course, you will understand:

  • Single Page Application Features
  • Key features of AngularJS
  • The Role of Modules
  • The Role of Directives in Views
  • Building Custom Directives
  • Using $scope for Data Binding
  • Techniques for Defining Controllers
  • Building Custom Filters
  • How to build re-useable data services with Factories and Services
  • Using $http to Interact with RESTful Services
  • Using AngularJS HTTP interceptors

Student Comments (24)

Comments about the Instructor
"Great personality, great passion for the subject. Kept the class interesting, which encouraged learning."
June 8, 2017 | ANGJS300 Student
Comments about the Instructor
"Very laid back, helped to invite questions. I'd be glad to have Dan as an instructor again. Also appreciated the sharing of his other content."
June 8, 2017 | ANGJS300 Student
Comments about enhancing the Courseware
"It would be ideal to have had training specific to our (Disney) angular code instead of the generic CRM example. I know that's a large request, though. The CRM example was fine but that would have been a slight improvement."
June 8, 2017 | ANGJS300 Student
Comments about enhancing the Courseware
"Have the lab force the student to attempt the answer."
June 8, 2017 | ANGJS300 Student
Comments about the Courseware
"Dan provided individual attention to help ensure each participant in the class got the expected results/experiences.Well timed breaks were very welcome."
June 8, 2017 | ANGJS300 Student
Load More Comments