目前,我使用angularJS的$cookieStore,在注销时逐个清除cookie。
$cookieStore.remove('gender');
$cookieStore.remove('username');
我检查了控制台中的$cookieStore对象,发现它看起来像这样。
Object {get: function, put: function, remove: function}
有没有办法在不删除单个cookie的情况下清除$cookieStore中的所有cookie?
您甚至可能已经有了一个解决方案,但除非是v1.4.x,否则您可以在那里进行
$cookies.getAll();
我想到的唯一有效的方法是这样的:
angular.forEach( ["cookieA", "cookieB"], function ( key ) {
$cookieStore.remove( key );
} );
为该块创建Service
将是最好的方法。您仍然需要知道您使用过的所有cookie名称,但这比使用多余的remove语句要好。节省几行和时间:)。