2016-01-11 3 views
3

Я использую angularjs и в соответствии с его documentation i наиболее использую cookies с ngCookies. Добавить ngCookie с этой структурой:

  1. добавить angular.js и угловой cookies.min.js моей index.html
  2. инъекционные ngCookie в мое приложение, используя этот код:

    var app = angular.module('test', 
    ['ngRoute','ngAnimate','ngFileUpload','ngSanitize','ngCookies']); 
    
  3. и теперь я впрыснуть нг-печенье для моей службы:

    app.service("transactionService", 
    
        ["$cookie", "$http","sessionStorageService", 
        function($cookie, $http, sessionStorageService){ 
    
         $cookies.put("unique_code",123456); 
         console.log(sessionStorageService.getCurrentUser().sessionid); 
         console.log($cookies.get("unique_code")); 
         return; 
        } 
    ]); 
    

, но я получаю эту ошибку: Ошибка: [$ injector: unpr]

где я ошибаюсь?

ответ

0

я нашел, наконец, мою вину, и это было очень просто и глупо .... моего угловой JS версии была 1,3. 0, но я получаю cookie с угловой версии 1.4.4 :(

4

Наименование услуги $cookies и не $cookie.

Боковое примечание при разработке полной версии (не уменьшенной) углового положения обеспечивает гораздо лучшие коды ошибок. Error: $injector:unpr документировано и хорошо известны:

This error results from the $injector being unable to resolve a required dependency. To fix this, make sure the dependency is defined and spelled correctly.

+0

Я исправляю свою опечатку ... но все же я получаю эту ошибку: http://errors.angularjs.org/1.3.0/$injector/unpr? p0 =% 24% 24cookieReaderProvider% 20% 3C-% 20% 24ookieReader% 20% 3C-% 20% 24cookies% 20% 3C-% 20transactionService –

+0

@ Navid_pdp11 Убедитесь, что файл угловой cookie.min.js загружен правильно, если он попытался создать скрипку, плункер, демонстрирующий проблема. – miensol

2

Вы опечатка $cookies

 ["$cookie", "$http","sessionStorageService", 
      ^
    function($cookie, $http, sessionStorageService){ 

Error: $injector:unpr => "Unknown Provider Error"

Заканчивать injector:unpr error

Также $ печенье документация here

2

, если вы используете старую версию Угловой, то вы должны использовать $ CookieStore вместо $ печенья

app.service("transactionService",[ 
"$cookieStore","$http","sessionStorageService", 

function($cookieStore, $http, sessionStorageService){ 

    $cookieStore.put("unique_code",123456); 
    console.log(sessionStorageService.getCurrentUser().sessionid); 
    console.log($cookieStore.get("unique_code")); 
    return; 
}]); 
Смежные вопросы