Topic: Web

Professional AngularJS (1118832094) cover image

Professional AngularJS

Valeri Karpov, Diego Netto
ISBN: 978-1-118-83209-7
Wiley E-Text
408 pages
April 2015
Other Available Formats: Paperback
Electronic Version: US $29.99 Purchase This E-book and Learn More

About This Title  |  Errata  |  P2P Forum for This Title
Table of Contents

INTRODUCTION xxv

CHAPTER 1: BUILDING A SIMPLE ANGULARJS APPLICATION 1

What You Are Building 1

What You Will Learn 3

Step 1: Scaffolding Your Project with Yeoman 4

Step 2: Creating Watchlists 9

Step 3: Configuring Client-Side Routing 19

Step 4: Creating a Navigation Bar 23

Step 5: Adding Stocks 26

Step 6: Integrating with Yahoo Finance 32

Step 7: Creating the Stock Table 36

Step 8: Inline Form Editing 40

Step 9: Formatting Currency 44

Step 10: Animating Price Changes 46

Step 11: Creating the Dashboard 49

Production Deployment 53

CHAPTER 2: INTELLIGENT WORKFLOW AND BUILD TOOLS 57

What Can Tooling Do for Me? 57

What Is Bower? 58

What Is Grunt? 60

What Is Gulp? 73

What Is Yeoman? 84

CHAPTER 3: ARCHITECTURE 95

Why Is Architecture Important? 95

Controllers, Services, and Directives 96

The ModelService Paradigm 102

Exposing API Using Controllers 108

Organizing Your Code with Modules 109

Directory Structure 113

Best Practices for Structuring User Authentication 127

CHAPTER 4: DATA BINDING 131

What Is Data Binding? 131

What Data Binding Can Do for You 134

CHAPTER 5: DIRECTIVES 157

What Is a Directive? 157

A Deeper Understanding of Directives 167

Changing Directive Templates at Runtime 179

CHAPTER 6: TEMPLATES, LOCATION, AND ROUTING 185

Part I: Templates 187

Part II: The $location Service 196

Part III: Routing 200

CHAPTER 7: SERVICES, FACTORIES, AND PROVIDERS 217

A Brief Overview of Dependency Injection 218

Building Your Own Services 221

Common Use Cases for Services 232

Utilizing Built-In Providers 236

CHAPTER 8: SERVER COMMUNICATION 243

Why Will I Learn? 243

Introduction to Promises 244

Services for HTTP Requests 246

Consuming the Twitter REST API 262

Scaffolding a REST API with StrongLoop LoopBack 264

Using Web Sockets with AngularJS 270

Using Firebase with AngularJS 273

CHAPTER 9: TESTING AND DEBUGGING ANGULARJS APPLICATIONS 277

AngularJS Testing Philosophy 277

DOM Integration Tests 292

Debugging AngularJS Apps 309

CHAPTER 10: MOVING ON 315

Using Angular-UI Bootstrap 316

Hybrid Mobile Apps with the Ionic Framework 325

Integrating Open Source JavaScript with AngularJS 331

AngularJS and ECMAScript 6 341

Conclusion 343

APPENDIX: RESOURCES 345

INDEX 347