
AngularJS is a robust Single Page Application (SPA) framework that can be used to build dynamic, client-centric applications. In this course you'll learn key concepts that you need to know to get started building AngularJS applications such as controllers, scope, views, routes, factories, services and more. The course provides step-by-step walk-throughs and coding demos that you're encouraged to code along with to enhance the learning process. By the end of the course you'll understand how all of the AngularJS pieces fit together and be able to apply this knowledge to building your own custom SPAs.
Meet the instructor Dan Wahlin, a veteran web developer who runs a United States consultancy focusing on asp.net, c sharp, no js, and Angular JS, and reviews course prereqs.
Review your HTML, CSS, and JavaScript background to prepare for AngularJS. Dive into module one and explore the topics we will cover.
What's a Single Page Application (SPA) and what features does AngularJS provide to help you build SPAs? This module will explore SPA concepts and key AngularJS features, provide a Hello World sample to get you started using it quickly, and explore key components of the framework and how they work together. You'll also learn how to navigate the AngularJS documentation to find additional details about the framework.
Explore how a single page application loads views into a shell page for a fast, desktop-like experience with back-button history, routing, and data binding, using AngularJS as a full-featured framework.
Learn how to start a basic AngularJS single-page app by including the script and declaring ng-app. Use ng-model for data binding and reveal input with template expressions.
Learn to build an AngularJS hello world in brackets by creating index.html, including AngularJS, and using ng-app and ng-model to bind a name to the root scope with live updates.
Explore the AngularJS architecture by unpacking modules, routes, views, controllers, scopes, filters, directives, and services, and learn how data flows from factories to the view via the scope.
Explore AngularJS documentation on angularjs.org, learn to navigate tutorials, developer guide, and API reference, and discover how to use services like http and directives with live examples.
Explore single page applications with AngularJS, its full feature set, and core parts like modules, controllers, scope, views, and factories to jumpstart your development.
In this module you'll learn the difference between control-oriented and data-oriented programming and see how AngularJS data-binding functionality will save you time and allow you to focus on your application's data. You'll also learn about the role of views and directives and see several directives in action. Finally, you'll learn about filters and how they can be used to filter, format, and sort data in AngularJS SPA applications.
Explore how AngularJS directives and data binding expressions drive dynamic views, covering ng-hide, ng-show, ng-repeat, ng-view, ng-model, and ng-app as building blocks for DOM manipulation.
Explore essential AngularJS directives such as ng cloak, ng switch, and ng class to manage data binding, conditional display, and dynamic styling, while preventing flicker and ensuring cross-browser compatibility.
Learn how to iterate data in AngularJS using ng-repeat to render array items in a list, with ng-init creating a names array and binding each name to a list item.
Learn to use ng-repeat in action to iterate over a collection and render name and city data from objects with binding expressions.
Explore how AngularJS built-in filters filter, format, and sort data via pipes in directives and data bindings, with currency, date, case, json, limit, and orderBy examples.
Learn to limit, sort, and filter data in AngularJS using limitTo and orderBy, plus filtering with ng-model and a custom CustomerFilter by the name property.
Click column headers to dynamically sort data by name, city, order total, or joined using ng-click, sortBy, reverse, and the orderBy filter to toggle ascending or descending.
Explore how views drive UI functionality in AngularJS through directives that manipulate the DOM, handle events, iterate data, and bind models. Use filters to sort and format data, reducing code.
Controllers play a critical role in the AngularJS framework. In this module you'll learn the role that controllers play, how they can be created, and how scope fits into the picture for binding data to views using a data-oriented approach. You'll also learn how to create an AngularJS module and how to add controllers into it.
Explore AngularJS architecture patterns, focusing on mvc and mvvm, and how Angular's controller and scope implement these patterns through data binding between model and view.
Create an AngularJS controller to manage customers on the scope, move data from the view into the controller, and enable sorting by using sortBy, reverse, and the orderBy filter.
Hook the view to the controller by adding ng-controller with the controller name, enabling data access, binding, filtering, and sorting of customers within the scope.
Refactor from scope to controller as syntax by replacing $scope with this and updating references, then compare using as syntax versus native scope, including ng repeat, especially for nested controllers.
Learn how to group controllers, routes, and other components into AngularJS modules to avoid global scope conflicts, inject dependencies, and integrate third-party modules using angular.module and square bracket syntax.
Define a module and attach controllers to it in ways, avoiding globals to leverage AngularJS machinery. Use array annotation or the dollar inject approach to protect dependency injection during minification.
Explore three options to add a controller to an AngularJS module, shifting from a global app variable to module-scoped patterns using angular.module and anonymous functions.
Learn AngularJS dependency injection techniques to survive minification. Compare the inline array approach and the controller.inject method, and see how wrapping and self-invoking keeps the global scope clean.
Explore how AngularJS uses modules, controllers, and scope to enable data binding between views and business logic, and how MVC and MVVM patterns shape the architecture.
Once you understand how to create controllers and views you need to know how to integrate routing into your Single Page Application. In this module you'll learn how to do that using the $routeProvider and see how to define routes, create route parameters, and access route parameter values. You'll also learn about the role that the ng-view directive plays in AngularJS.
Learn to add routing in an AngularJS app by referencing the ngRoute module and configuring routes via the route provider, including angular_route.js from angularjs.org and declaring ngRoute as a dependency.
Copy the angular route script from code.angularjs.org (development version) into a new angular_route.js file. Reference it under scripts and add ngRoute as a dependency in your app.js to enable routing.
Use the route provider to map routes to controllers and templates. Create a views folder with customer.html and implement an otherwise redirect to the root path.
Use the ng-view directive to mark where a loaded view appears in the shell page of a single-page AngularJS app, with options like div, data-ng-view, or an element.
Add a div as the ng-view placeholder in the shell page to enable routing. When the customers controller loads and customers.html renders, the view displays inside the shell's ng-view area.
Factories and services can be used to encapsulate re-useable code so it can be shared across application components such as controllers and even other factories or services. In this module you'll learn about the role of factories and services, see how they can be created and added into a module, and learn the difference between the two. You'll also learn about built-in AngularJS services such as $http and see how it can be used to make Ajax calls to a back-end Node.js RESTful service.
Create and register a factory with angular.module().factory, returning a custom singleton object to share code and data across controllers. Minification-safe using explicit dependencies with $inject.
Refactor hard-coded customer data into a reusable AngularJS factory, exposing getCustomers and registering it with the app module to streamline data access.
Learn how an AngularJS service acts as a singleton object, using the this keyword, how it differs from a factory, and how to inject it into controllers while considering minification.
Learn how to refactor an AngularJS factory into a service by creating customerService.js, renaming to customersService, and replacing factory usage in the controller.
Explore how to define and inject simple application values with AngularJS's value and constant, compare where they can be injected, and learn when constants can be injected into config.
Define and expose global app settings in angularjs using value and constant, centralizing title and version for access across controllers and views.
Wire promises from the factory into success and error callbacks in AngularJS controllers. Convert getCustomers and getCustomer to asynchronous calls via restful service and HTTP service, binding results to scope.
Learn to use AngularJS's $log service to capture and display server errors, log data and status, set a breakpoint, and substitute for console.log during testing.
Learn how to enhance the user interface with Bootstrap CSS classes and AngularJS animations to add a professional look and feel. Different options for defining animations will be discussed including CSS transitions and animations with a focus on transitions in the code.
Enhance the AngularJS UI by integrating Bootstrap across the shell and orders view, adding a header with nav, and leveraging controllers, views, routes, and filters for a polished interface.
Explore integrating animations with AngularJS directives using the ngAnimate module to create enter, leave, and move effects for ngView, ngRepeat, ngShow, and ngHide, via css animations.
Explore css animations in AngularJS with ngAnimation, including transitions, keyframes, and slide-in view effects, plus ready-made examples from animate.css and live plunker demos.
Learn to enable animations in angularjs by loading the ngAnimate script after angular.js, registering ngAnimate as a module dependency, and linking css with directives to activate animation features.
Add the ngAnimate module by including the angular-animate script from code.angularjs.org, then wire the ngAnimate module in AppJS and the shell to enable animations in AngularJS directives.
Create a dedicated animations stylesheet and reference it in your index, then implement ng-enter, ng-leave, and move animations with active states to slide, fade, and reorder list items.
Learn how to attach CSS animation classes to AngularJS directives like ng-class, ng-view, ng-repeat, ng-show, and ng-hide to create smooth transitions and fade in/out during filtering.
Hook directives to animations by applying slide and repeat CSS classes to elements, enabling smooth slide-in transitions and fade effects during filtering and data changes.
Enable animations in AngularJS by loading the angular animate script and ngAnimate, leveraging directives like ng-view and ng-show to create smooth transitions and a polished UI with Bootstrap styling.
Several people have asked if I could include videos covering the basics of building custom AngularJS directives. I'm happy to include 2 full sections from the AngularJS Custom Directives course (also on Udemy) that will help you get started!
Explore the role of directives in AngularJS, learn core concepts like the directive definition object and compile provider, and build a simple hello world directive to start.
Create a simple hello world directive in AngularJS by defining a module and directive, and returning a directive definition object with a template that outputs hello world.
Explore the core building blocks of Angular directives, including the directive definition object and the compile provider. Learn how templates, scope, isolate scope, controllers, and link functions render dynamic HTML.
Explore how directives—built-in, third-party, and custom—manipulate the dom, render html, and handle events, using the compile provider and directive definition object to define templates and controllers.
Several people have asked if I could include videos covering the basics of building custom AngularJS directives. I'm happy to include 2 full sections from the AngularJS Custom Directives course (also on Udemy) that will help you get started!
Explore the difference between shared and isolate scope in AngularJS and how to use local scope properties to pass data and communicate with directives.
Compare shared scope and isolate scope in AngularJS directives, examining inherited data bindings versus a truly isolated scope, and learn how to expose data from the outside world with bindings.
Explore the equals local scope property in AngularJS, enabling two way binding of strings or objects between a directive and the outer scope.
Explore the equals local scope property to enable two-way data binding in a directive by binding a data source object with name and street.
Explore jq lite, a subset of jQuery in AngularJS, and the link function in a directive. Learn to handle click and mouse events and update HTML or CSS.
Discover how to use AngularJS directive isolate scope with at, equals, and ampersand bindings to pass values, objects, and functions between a directive and its outer scope.
** Updated with new articles and bonus videos about getting started building custom Angular directives! **
Please note that this course covers version 1.x of AngularJS. This course does not cover Angular development (which is different than AngularJS).
There are many AngularJS courses on the Web now. Which one should you take? If you're looking to quickly grasp the core concepts of AngularJS 1.x with hands-on examples and want to learn from a developer/instructor with over 20 years of experience who has also been awarded the Angular Google Developer Expert (GDE) award from Google then this is the course for you! Dan also created the popular AngularJS in 60-ish Minutes video on YouTube (over 1.9 million views) so if you enjoyed that then you'll love this course!
AngularJS is a powerful JavaScript framework that can be used to build Single Page Applications (SPAs) that run in the browser. By the time you're done with this course you'll understand how AngularJS can be used to build applications. This includes learning how to build custom controllers and re-useable services, how to bind data into views, how routing works, and also how custom animations can be used to add polish to your apps. The course even includes bonus sections on getting started building custom directives! This is a hands-on course that you can follow along with and learn by doing.
-----------------------------------
AngularJS is a robust Single Page Application (SPA) framework that can be used to build dynamic, client-centric applications that can run in desktop browsers as well as on phones and tablets. You can use AngularJS to build multi-screen applications that perform much like a desktop application but can be viewed and interacted with using a normal browser.
In this course by Google Developer Expert (GDE) Dan Wahlin you'll learn essential concepts that you need to know to get started building AngularJS applications such as controllers, scope, views, routes, factories, services and more. The course provides step-by-step walk-throughs and coding demos that you're encouraged to code along with to enhance the learning process. By the end of the course you'll understand how all of the AngularJS pieces fit together and be able to apply this knowledge to building your own custom Web applications.
The AngularJS JumpStart course is broken down into 6 modules (with additional bonus modules included) with each module providing source code so that you can follow along if you'd like.
AngularJS - The Big Picture
Views, Directives and Filters
Controllers, Scope and Modules
Routing
Services and Factories
Animation
Bonus: Getting Started Building Custom Directives
Bonus: Shared Scope, Isolate Scope, the link() Function
Bonus: Articles on Building Custom AngularJS Directives
By the end of the course you'll have walked through of all of the key components in AngularJS and built a working Single Page Application. If you're looking to "jumpstart" your AngularJS knowledge look no further than this course. It's a great technology to know and add to your resume!