使用angular获取jquery cookie

时间:2016-02-22 13:19:51

标签: javascript jquery angularjs cookies

我正在使用jquery.cookie v1.4.1来设置像这样的cookie

$.cookie('userCookie', $("#user").val());

其中$(“#user”)。val()返回的内容类似'username'

然后在角度应用程序中,我尝试使用

检索此cookie
var userCookie = $cookies.get('userCookie');

但是没有用,我得到了:

var userCookie = undefined

我正在使用AngularJS v1.4.8和相应的ngCookies

任何帮助都会很好......

2 个答案:

答案 0 :(得分:1)

感谢charlietfl我让它发挥作用。

碰巧我正在为特定路径设置cookie,比如说' / domain / somepath'然后我试图从' / domain / someotherpath'中检索它,其中cookie不可用。

我修复了它将cookie指向我所有域的路径,如下所示:

 $.cookie('userCookie',$("#user").val(), { path: '/' });

答案 1 :(得分:0)

为什么不使用角度来存储您的Cookie?

$cookies.put('userCookie', $("#user").val());

顺便说一下:如果你在Angular App中使用这样的JQuery,那就太可怕了。

$cookies.get('userCookie');

您的问题可能是:在您的DOM-Element甚至在页面上呈现之前,将创建cookie。试试$ .cookie('userCookie','test123'); ,这应该非常确定(角度为100%)。

如何解决这个问题?首先,如果你有一个角落,请不要使用JQUERY !!!

<input ng-model="username"></input>

$cookies.put('userCookie', $scope.username);