- Don't use a '$' prefix when naming your services and models, in order to avoid any possible naming collisions.
http://docs.angularjs.org/api/AUTO.$injector
$inject.invoke(['serviceA', function(serviceA){}]);instead of
$inject.invoke(function(serviceA){});We can also use
PhoneListCtrl.$inject = ['$scope', '$http'];instead of
var PhoneListCtrl = ['$scope', '$http', function($scope, $http) { /* constructor body */ }];A boilerplate for AngularJS https://github.com/angular/angular-seed
http://docs.angularjs.org/guide/dev_guide.e2e-testing
<title ng-bind-template="Google Phone Gallery: {{query}}">Google Phone Gallery</title>