Je peux définir un cookie comme celui-ci:
$cookieStore.put('myCookie','I am a cookie');
Et je peux l'enlever avec
$cookieStore.remove('myCookie');
Mais comment puis-je supprimer tous les cookies?
Ok, évidemment ce n'est peut-être pas la meilleure solution, mais j'ai trouvé une solution:
angular.forEach($cookies, function (v, k) {
$cookieStore.remove(k);
});
Mais j'apprécierais toujours s'il y a une meilleure solution. Je suis vraiment curieux de savoir pourquoi il n'y a pas de méthode $cookieStore.removeAll()
intégrée ...
Nécessite l'installation du module ngCookies .
Modifier
Avec la version 1.4, $cookieStore
Est obsolète. À la place, vous pouvez utiliser le service $cookies
. Obtenez tous les cookies avec $cookies.getAll()
et supprimez chacun avec $cookies.remove('key')
.
var cookies = $cookies.getAll();
angular.forEach(cookies, function (v, k) {
$cookies.remove(k);
});
Si vous êtes sur cette page et que vous travaillez sur un ancien projet qui utilise angular 1.3.x ou moins, vous pouvez simplement utiliser ceci
$cookies.cookieKey = undefined;
delete $cookies['cookieKey'];