使用 AngularJS 创建 cookie
Posted
技术标签:
【中文标题】使用 AngularJS 创建 cookie【英文标题】:Create cookie with AngularJS 【发布时间】:2015-05-21 07:00:52 【问题描述】:我尝试使用下面的代码来设置cookies:
angular.module('myApp').controller('myController', ['$scope', '$http','$cookies', function ($scope, $http, $cookies)
$scope.setMyCookie = function ()
$cookies.put('Mykey', 'MyValue');
;
$scope.setMyCookie();
]);
我更新到 1.3.14 版本的 angular cookie,我知道有一个重大变化,但是我现在应该如何编写上面的代码?
运行上面的代码我得到这个错误:Error: $cookies.put is not a function
更新: 我必须在 2 个文件中执行此操作:
var app = angular.module('myApp', ['ngRoute']);
app.config(['$routeProvider', '$httpProvider', function ($routeProvider, $httpProvider)
]);
angular.module('myApp', ['ngCookies']).controller('cookiesExample', ['$cookies', function ($cookies)
// Retrieving a cookie
var favoriteCookie = $cookies.myFavorite;
// Setting a cookie
$cookies.myFavorite = 'oatmeal';
]);
【问题讨论】:
【参考方案1】:你必须在你的模块中注入ngCookies
:
angular.module('myApp', ['ngCookies'])
【讨论】:
【参考方案2】:通过设置$cookies
变量发生:
angular.module('cookiesExample', ['ngCookies'])
.controller('ExampleController', ['$cookies', function($cookies)
// Retrieving a cookie
var favoriteCookie = $cookies.myFavorite;
// Setting a cookie
$cookies.myFavorite = 'oatmeal';
]);
你的版本:
angular.module('myApp', ['ngCookies'])
.controller('myController', ['$scope', '$http','$cookies', function ($scope, $http, $cookies)
// Retrieving a cookie
var favoriteCookie = $cookies.myFavorite;
// Setting a cookie
$cookies.myFavorite = 'oatmeal';
]);
Source
注意:
请记住在您的 html 中包含 <script src="angular-cookies.js">
。
【讨论】:
好吧,当我这样做时,我的页面绝对没有加载 专为您编辑.. ;) 当然包含“angular-cookies.js”。我尝试了您的代码,只需更改控制器名称和模块名称。该页面不再加载 检查小错误是否丢失;或其他。你可以使用这个工具:developers.google.com/closure/utilities【参考方案3】:您的模块中缺少ngcookies
angular.module('myApp', ['ngCookies'])
【讨论】:
以上是关于使用 AngularJS 创建 cookie的主要内容,如果未能解决你的问题,请参考以下文章