1

目前,使用 angularJS 的 $cookieStore,我在注销时一一清除 cookie。

$cookieStore.remove('gender');
$cookieStore.remove('username');

我检查了控制台中的 $cookieStore 对象,发现它看起来像这样。

Object {get: function, put: function, remove: function}

有什么方法可以在不删除单个 cookie 的情况下清除 $cookieStore 中的所有 cookie?

4

1 回答 1

2

您甚至可能已经有了解决方案,但除非它是 v1.4.x,否则您可以在哪里做(没有亲自尝试过)

$cookies.getAll();

我想出的唯一有效方法是这样的:

angular.forEach( ["cookieA", "cookieB"], function ( key ) {
        $cookieStore.remove( key );
} );

Service为该块创建一个将是最好的方法。您仍然需要知道您使用过的所有 cookie 名称,但这比使用多余的删除语句要好。节省几行和时间:)。

于 2015-08-05T20:42:52.887 回答