Как удалить все куки в Angularjs?
Я могу установить cookie следующим образом:
$cookieStore.put('myCookie','I am a cookie');
и я могу удалить его с
$cookieStore.remove('myCookie');
но как я могу удалить все куки?
2 ответов
хорошо, очевидно, это может быть не лучшее решение, но я нашел обходной путь:
angular.forEach($cookies, function (v, k) {
$cookieStore.remove(k);
});
но я все равно буду признателен, если есть лучшее решение. Мне очень интересно, почему нет встроенного $cookieStore.removeAll()
метод...
требует ngCookies модуль для установки.
редактировать
С версией 1.4,$cookieStore
- Это исключено. Вместо этого вы можете использовать $cookies
сервис. Получить все куки с $cookies.getAll()
и снять с каждого $cookies.remove('key')
.
var cookies = $cookies.getAll();
angular.forEach(cookies, function (v, k) {
$cookies.remove(k);
});
Если вы находитесь на этой странице и работаете над старым проектом, использующим angular 1.3.x или меньше, вы можете просто использовать это
$cookies.cookieKey = undefined;
delete $cookies['cookieKey'];