Writing your first factory service

As we learned earlier, a factory is written to return a single object, array, or function that can then be passed as a parameter to any other function or controller, across the entire application.

Let's create a factory function to store a country list and pass it on to our models via the controller.

Let's open the app/js/services.js file and add the following code:

'use strict';
angular.module('myApp.services', []).
value('version', '0.1')

.factory('rtmFactory', function() {
    var countries = [
    {name: 'USA',code: 'us'}, 
    {name: 'UK',code: 'uk'}, 
    {name: 'France',code: 'fr'}
    return {
        getCountries: function() {
            return countries;

Here, we are creating a factory named rtmFactory and chaining it to the myApp

Get AngularJS Web Application Development Blueprints now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.