Can't use angular-local-storage

All we need is an easy explanation of the problem, so here it is.

This my code:

   angular.module('MyModule').controller('MyController', ['$scope', '$stateParams','$location', '$http','LocalStorageModule',
function($scope, $stateParams, $location, $http, localStorageService) {

        localStorageService.add('test', 'val');
]);

any Idea whats wrong?

I’m getting exception – unknown provider localstorageservice in the FF browser

Firebug Error

Error: [$injector:unpr] Unknown provider: LocalStorageModuleProvider <-   LocalStorageModule
http://errors.angularjs.org/1.2.20/$injector/unpr?p0=LocalStorageModuleProvider%20%3C-     %20LocalStorageModule
    at http://127.1.0.0/lib/angular/angular.js:78:12

How to solve :

I know you bored from this bug, So we are here to help you! Take a deep breath and look at the explanation of your problem. We have many solutions to this problem, But we recommend you to use the first method because it is tested & true method that will 100% work for you.

Method 1

We should ask inejctor for 'localStorageService' instead of your 'LocalStorageModule'

So the code should look like this:

angular
    .module('MyModule')
    .controller('MyController', ['$scope', '$stateParams','$location'
                                , '$http'
                                // instead of this
                                // ,'LocalStorageModule',
                                // use this
                                ,'localStorageService',
               function($scope, $stateParams, $location, $http, localStorageService) 
    {
        //localStorageService.add('test', 'val');
        localStorageService.set('test', 'val');
    }]);

And when we do initialize the module, we have to include the local storage module

angular
    .module('MyModule', [
       'LocalStorageModule', 
        ...
    ])

And also as documented here:

we should use .set()

// To add to local storage
localStorageService.set('localStorageKey','Add this!');

Note: Use and implement method 1 because this method fully tested our system.
Thank you 🙂

All methods was sourced from stackoverflow.com or stackexchange.com, is licensed under cc by-sa 2.5, cc by-sa 3.0 and cc by-sa 4.0

Leave a Reply