Skip to Content
AngularJS
book

AngularJS

by Shyam Seshadri, Brad Green
April 2013
Beginner to intermediate
196 pages
4h 36m
English
O'Reilly Media, Inc.
Content preview from AngularJS

Chapter 7. Other Concerns

In this chapter, we will take a look at some other useful features that are present in AngularJS, but weren’t covered at all or in depth in the chapters and examples so far.

$location

Up to now, you have seen quite a few examples of the $location service in AngularJS. Most of them would have been fleeting glances—an access here, set there. In this section, we will dive into what exactly the $location service in AngularJS is for, and when you should and shouldn’t use it.

The $location service is a wrapper around the window.location that is present in any browser. So why would you want to use it instead of working directly with window.location?

Goodbye global state
window.location is a prime example of global state (actually, both window and document objects in the browser are prime examples). The minute you have global state in your application, testing, maintaining and working with it becomes a hassle (if not now, then definitely in the long run). The $location service hides this nastiness (what we call global state), and allows you to test the browser’s location details by injecting mocks during your unit tests.
API
window.location gives you total access to the contents of the browser location. That is, window.location gives you the string while $location gives you nice, jQuery-like setters and getters to work with it in a clean way.
AngularJS integration
If you use $location, you can use it however you want. But with window.location, you would have ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

AngularJS in Action

AngularJS in Action

Lukas Ruebbelke
Pro AngularJS

Pro AngularJS

Adam Freeman
AngularJS: Maintaining Web Applications

AngularJS: Maintaining Web Applications

Rodrigo Branas, Chandermani, Matt Frisbie, Amos Q. Haviv
AngularJS: Up and Running

AngularJS: Up and Running

Shyam Seshadri, Brad Green

Publisher Resources

ISBN: 9781449355852Errata