Angular和$ cookies – $ cookies.get不是一个函数

我正在尝试在Angular中使用cookie – 这就是我正在尝试的:

<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度的人阅读这个,使文档中的版本切换绿色和巨大! 你根本没有注意到它。

在Angular 1.3.14中,你可以使用

 var favoriteCookie = $cookies[user_id]; 

请参阅此处的文档: angular度cookies

您拥有的语法是针对版本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; 

以下方法应该工作。

 var favoriteCookie = $cookies.user_id; 
  • 通过expression式理解ngRepeat'track'
  • 如何在一个指令的链接函数中testing行为
  • angular度访问多个http调用的数据 – 如何解决承诺
  • 如何提高一个巨大的数据集(angular.js)ngRepeat的性能?
  • 使用ng-repeat和limitTo限制显示的可见项目的数量
  • 如何在angularjs e2e量angular器testing中上传文件
  • 找不到模块'../build/Release/bson'] code:'MODULE_NOT_FOUND'} js-bson:无法加载c ++ bson扩展,使用纯JS版本
  • orderBy两个字段(一个反向)
  • $ sce.trustAsResourceUrl()全局
  • 如何在angular材料中水平alignment单选button?
  • 在angularjs中如何访问触发事件的元素?