Подтвердить что ты не робот

Angular и $cookies - $cookies.get не является функцией

Я пытаюсь использовать файлы cookie в Angular - вот что я пытаюсь:

<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/angular.js/1.3.14/angular-cookies.min.js"></script>

var capApp = angular.module('capApp', ['ngRoute','ui.bootstrap','ngCookies']);

capApp.controller('cookieCtrl', ['$scope','$cookies', function($scope, $cookies) {
  var favoriteCookie = $cookies.get('user_id');
  alert(favoriteCookie);
}]);

Я получаю эту ошибку в консоли:

TypeError: $cookies.get is not a function

Любые идеи, в которых я ошибаюсь?

UPDATE

Проверьте, какая версия Angular вы используете для всего: любые ребята из Angular читают это, превращают версию в ярлык и огромные документы! Вы просто этого не замечаете.

4b9b3361

Ответ 1

В Angular 1.3.14 вы можете просто использовать

var favoriteCookie = $cookies[user_id];

Смотрите документ здесь: Angular Cookies

Ответ 2

Синтаксис, который у вас есть, относится к версии 1.4.x, но вы ссылаетесь на более старую версию. Если вы не хотите обновлять до 1.4.x, вы можете вместо этого использовать $cookieStore следующим образом:

$cookieStore.put("key", "value"); 
var value = $cookieStore.get("key");

Альтернативно, если вы используете версию 1.3.x или ниже, вы можете использовать $cookie следующим образом:

$cookies.key = "value";
var value = $cookies.key; 

Ответ 3

Следующий метод должен работать.

var favoriteCookie = $cookies.user_id;