我在我的AngularJS应用程序中设置cookie时遇到了一些问题。情况是,我想要设置一个在整个站点上都可用的cookie,但是我不知道如何使用AngularJS默认的$cookies对象设置所有cookie参数。
例如,在普通的JavaScript中,我会写下这段代码:
var exp = new Date();
exp.setTime(exp.getTime()+(24*60*60*1000)); // expires after a day
document.cookie = "myCookies=yes;expires="+exp.toGMTString()+ ";domain=.example.com;path=/";
但是由于DOM对象不能很容易地加载到我的应用程序中,所以我不得不使用$cookies(angular-cookies.js)。新代码如下:
angular.module('MyApp')
.controller('MyCtrl', function ($scope, $filter, Slug,PUBLIC_ROUTES, $cookies) {
var myCookies = $cookies['mycookies'];
if (typeof myCookies == 'undefined' || typeof myCookies == undefined) {
$cookies['mycookies'] = "yes";
}
});
但是我无法为$cookies设置过期日期、路径和域,因为这些信息不可用。
我该怎么办?