
AngularJS: Novice to Ninja
Description
Alles über E-Books | Antworten auf Fragen rund um E-Books, Kopierschutz und Dateiformate finden Sie in unserem Info- & Hilfebereich.
More details
Other editions
Additional editions

Content
- Intro
- AngularJS: Novice to Ninja
- Table of Contents
- Preface
- Who Should Read This Book
- Conventions Used
- Code Samples
- Tips, Notes, and Warnings
- Supplementary Materials
- Want to Take Your Learning Further?
- Falling In Love With AngularJS
- The Power Features of AngularJS
- Download and Installation
- Installing via CDN
- Hosting on Your Server
- Required Tools
- AngularJS Batarang
- The Angular Seed Project
- The Anatomy of an AngularJS app
- What is MVW?
- MVC
- MVVM
- Structuring Our Code With MVC
- Unit and End-to-End Testing in AngularJS
- Where to Put Your Tests
- How to Run Tests
- For Unit Tests
- For End-to-End Tests
- When Not To Use AngularJS
- Conclusion
- Modules, Controllers & Data Binding
- Creating Our First Module
- Modular Programming Best Practices
- Controllers
- The Role of a Controller
- Attaching Properties and Functions to Scope
- Adding Logic to the Controller
- Adding Instance Functions and Properties to Controllers
- Dependency Injection in Controllers With Minification
- Overview of Two-Way Data Binding
- What Is Data Binding?
- Two-Way Binding in AngularJS
- Doing Something Cool
- Introducing Our Demo Application
- The Single Page Blogger
- Getting Ready
- Conclusion
- AngularJS Scope & Events
- Scope Demystified
- Writing Access with Prototypes
- Writing a Primitive to an Object
- Writing a Reference Type to an Object
- Objects Can Extend Objects
- Prototypal Inheritance in AngularJS Scopes
- Advanced Scope Concepts
- The Watchers in AngularJS
- The $watchCollection() Function
- The $apply() Function and the $digest Loop
- $apply and $digest in Action
- Introducing the $timeout Service
- Broadcasting & Emitting Events
- $scope.$emit(name,args) For Emitting Events
- $scope.$broadcast(name,args) For Broadcasting Events
- $scope.$on(name,handlerFunction) For Registering Listeners
- Events in Action
- The $destroy event
- Conclusion
- Multiple Views and Routing
- Creating Multiple Views
- Using $routeParams in the Controller
- Using ng-template
- The resolve Property in the Route Config Object
- Exploring the $location Service
- The API
- Writable Parts
- Non-Writable Parts
- Adding a New History Entry Versus Replacing One
- Events in Routing
- $location related events
- $route related events
- The ng-include Directive
- Introducing the Angular UI Router
- Getting Started With UI Routter
- Requirements
- Defining States
- Conclusion
- AngularJS Services, Factories, and Providers
- Service
- Eager Loading of a Service
- Factory
- Provider
- Value
- Constant
- Using Decorators
- Conclusion
- Developing Single Page Blogger
- Developing Our App
- Defining Routes
- Creating Our Service
- Creating the Controller
- Creating the Templates
- App Entry Point (index.html)
- How About Some Unit Tests?
- Unit Testing postService
- Unit Testing Controllers
- Writing an End-to-End (e2e) Test
- Conclusion
- Understanding AngularJS Forms
- AngularJS Forms
- &input& and &textarea& controls
- &select& control
- Handling Empty Options
- Getting Options From the Scope Model
- Handling Multi Select
- Radio Button Control
- Checkbox Control
- AngularJS Form Validation
- Applying Validation
- Tracking Validity of a Form
- Applying Color to Invalid Input controls and Messages
- Form Submission
- Using ng-form
- Custom Validators
- Updating Models With a Twist
- Forms in Action : Single Page Blogger v1.1
- Creating the admin Module
- Defining States
- Creating Controllers
- Admin Panel Template
- Template For Adding a New Post
- Conclusion
- Interacting with REST APIs
- A Primer on Promises
- The Promise API
- Example Usage
- Promise Chaining
- Creating a Promise that Always Rejects
- Understanding the $http Service
- The config Object
- A Weather Search Service
- Setting Request Headers
- Request and Response Transformers
- transformRequest
- transformResponse
- Caching
- Interceptors
- Understanding AngularJS $resource
- Prerequisites
- How Does $resource Work?
- Conclusion
- Using REST APIs in Single Page Blogger
- Applying $resource to Our App
- Defining Templates
- Defining Controllers
- Including angular-resource.js and Adding the ngResource Module
- Unit Testing Our Controllers
- AngularJS Directives
- What Are Directives, Really?
- Directives From the jQuery Perspective
- Creating Custom Directives
- The Link Function
- The Compile Function
- Compilation of Directives
- Changing a Directive's Scope
- Binding Between Parent Scope and Isolated Scope Models
- Using @ For One-Way Binding
- Using = For Two-Way Binding
- Using & to Execute Functions in the Parent Scope
- Parent Scope vs. Child Scope vs. Isolated Scope
- Transclusion
- Differences Between transclude:'element' and transclude:true
- The Controller Function and Require
- Cleaning Up Your Directive
- IE 8 Precautions
- Conclusion
- Adding a Comment System to Single Page Blogger
- Unit Testing Our Directive
- Conclusion
- Dependency Injection In AngularJS
- A Brief Recap
- The $provide Service
- The $injector Service
- Dynamically Injecting a Dependency
- Registration of Controllers, Filters, and Directives
- Conclusion
- AngularJS Filters
- Filter Basics
- Fun with Custom Filters
- Chaining Multiple Filters
- Using Filters in Controllers, Services, and Directives
- Meet a Filter Called filter
- Meet the orderBy Filter
- Meet the limitTo Filter
- Using the $filter Service
- Using Filters in Single Page Blogger
- Permalink Filter
- Wordcount Filter
- Conclusion
- AngularJS Animation
- Getting Started
- Animation with CSS3 Transitions
- Going Further
- Animation Using Keyframes
- Animation Using jQuery
- Animation Using ngClass
- Animation with Custom Directives
- Adding Simple Animation to Single Page Blogger
- Conclusion
- Deployment and Internationalization
- Deployment
- Internationalization
- Conclusion
- Authentication and Authorization in AngularJS
- Adding Login Functionality
- Authorization
- Where To Go Next?
- Things to Do Now
- Improving Our Demo App
- Host it Yourself : Back-end
System requirements
File format: PDF
Copy-Protection: Adobe-DRM (Digital Rights Management)
System requirements:
- Computer (Windows; MacOS X; Linux): Install the free reader Adobe Digital Editions prior to download (see eBook Help).
- Tablet/smartphone (Android; iOS): Install the free app Adobe Digital Editions or the app PocketBook before downloading (see eBook Help).
- E-reader: Bookeen, Kobo, Pocketbook, Sony, Tolino and many more (only limited: Kindle).
The file format PDF always displays a book page identically on any hardware. This makes PDF suitable for complex layouts such as those used in textbooks and reference books (images, tables, columns, footnotes). Unfortunately, on the small screens of e-readers or smartphones, PDFs are rather annoying, requiring too much scrolling.
This eBook uses Adobe-DRM, a „hard” copy protection. If the necessary requirements are not met, unfortunately you will not be able to open the eBook. You will therefore need to prepare your reading hardware before downloading.
Please note: We strongly recommend that you authorise using your personal Adobe ID after installation of any reading software.
For more information, see our eBook Help page.