簡體   English   中英

如何刪除ngCookie(angular-cookies)

[英]How to delete ngCookie (angular-cookies)

啟動我的應用程序時,我創建了一個名為“ stateCookie”的cookie。 在更改狀態時,我將變量添加到該Cookie中。 注銷時,我希望此Cookie被完全銷毀或為空。

在他們的文檔中,只是完成了remove() ,但cookie仍然存在。 即: $cookies.remove('stateCookie');

注銷並登錄后: >>> refreshCookie {"ticker":"SPY","term_id_1":5112166,"term_id_2":30111615,"term_id_3":13064871}

在此處輸入圖片說明


this.logout = () => AuthFactory.webservice_logout().then((res) => {
    // $cookies.remove('stateCookie');
    angular.forEach($cookies, function(value, key) {
        $cookies.remove(key);
    });

    // console.log('$cookies', $cookies);

    // $cookies.map((value, key) => {
    //  $cookies.remove(key);
    // });

    const refreshCookie = $cookies.get('stateCookie');
    console.log('!!!refreshCookie', refreshCookie);
    $state.go('login', {}).then(() => {
        $state.reload();
    });
});

破解修復

返回login狀態后,我可以通過調用window.reload清除cookie。

$state.go('login', {}).then(() => window.location.reload(true));

嘗試這個:

this.logout = () => AuthFactory.webservice_logout().then((res) => {
    // $cookies.remove('stateCookie');
    var cookies = $cookies.getAll();
    console.log(cookies);
    angular.forEach(cookies, function(value, key) {
        $cookies.remove(key);
    });

    // console.log('$cookies', $cookies);

    // $cookies.map((value, key) => {
    //  $cookies.remove(key);
    // });

    const refreshCookie = $cookies.get('stateCookie');
    console.log('!!!refreshCookie', refreshCookie);
    $state.go('login', {}).then(() => {
        $state.reload();
    });
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM