Description
In this course, we'll look at the core design of AngularJS 1.x (the most recent version of AngularJS 1), as well as its components and code organisation techniques. We will improve the functionality of our web app by reusing existing services and writing our own using dependency injection. We will create reusable HTML components that use AngularJS data binding and extend HTML syntax with a very powerful AngularJS feature called directives. We'll configure routing so that our SPA can have multiple views. In addition, we will learn how to unit test our functionality. By the end of this course, you will have created a fully functional, well-organized, and tested web application in AngularJS that you will be able to deploy to the cloud.
Syllabus :
1. Introduction to AngularJS
- Development Environment Setup - What We Will Need
- Development Environment Setup for Mac
- Development Environment Setup for Windows
- Why NOT Keep Things Simple?
- Why Does Code Get Complex?
- Why Does Code Get Complex?
- Model-View-ViewModel (MVVM)
- AngularJS Installation and First Simple App
- Sharing Data With The View Through Scope
- Implementing NameCalculator Example in AngularJS
- What’s Behind the “Magic”: Custom HTML Attributes7m
- Dependency Injection
- How Dependency Injection Works in Javascript
- Protecting Dependency Injection from Minification
- Expressions and Interpolation
2. Filters, Digest Cycle, Controller Inheritance, and Custom Services
- Filters
- Creating Custom Filters
- Digest Cycle
- $digest and $apply
- 2-way, 1-way and 1-time Binding
- ng-repeat
- Filtered ng-repeat
- Prototypal Inheritance
- Scope Inheritance
- Controller As Syntax
- Custom Services
- Custom Services with .factory()
- Custom Services with .provider()
- ng-if, ng-show and ng-hide
3. Promises, Ajax, and Custom Directives
- Asynchronous Behavior with Promises and $q
- Ajax with $http Service
- Directives: Dynamic HTML
- restrict Property
- Directive’s Isolate Scope: “=” and “@”
- Using Controllers Inside Directives
- Directive APIs and “&”
- Manipulating the DOM with link
- Using Directive’s transclude to Wrap Other Elements
4. Components, Events, Modules, and Routing
- Components & Component-Based Architecture
- AngularJS Event System
- Modules
- Routing
- Routing State with Controller
- Routing State with resolve
- Routing State with URL Parameters
- Routing State with Nested Views
- Router State Transition Events
5. Form Validation, Testing, and Restaurant Site Development
- Form Validation
- Testing Javascript with Jasmine
- Testing AngularJS Controllers
- Testing AngularJS Services and $http
- Testing AngularJS Directives
- Testing AngularJS Components
- Restaurant Server Setup
- Basic Structure of the Restaurant App
- Coding Up a Loader/Spinner
- Coding Up $http Interceptor
- Coding Up Menu Categories View
- Single Category View