ExtJS 4:如何在用户注销时销毁所有状态

发布于 2025-01-07 08:04:54 字数 286 浏览 0 评论 0原文

我已将我的应用程序设置为使用以下代码的状态:

Ext.state.Manager.setProvider(new Ext.state.CookieProvider());

但现在我遇到了问题。如何销毁所有状态cookie?

当用户单击注销按钮时,我的应用程序需要销毁状态。

我已经尝试过这个,但它不起作用:

Ext.state.Manager.clear();

如何解决这个问题?非常感谢。

I've set my app to use state with this code:

Ext.state.Manager.setProvider(new Ext.state.CookieProvider());

But now I'm having a problem. How to destroy all states cookies??

My app needs to destroy the states when user clicks logout button.

I've tried this, but it doesn't work:

Ext.state.Manager.clear();

How to solve this?? Thank you very much.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

情深已缘浅 2025-01-14 08:04:54

像这样

//create the CookieProvider and create the state manager;
var cp=new Ext.state.CookieProvider();
Ext.state.Manager.setProvider(cp);

//save some values in the state
Ext.state.Manager.set('a', 1)
Ext.state.Manager.set('b', [1,2,3]);

//show what's inside
console.log(cp, cp.state);

//Here it comes. This is how to clear all states
for (var item in cp.state) {
    Ext.state.Manager.clear(item);
}

Like so

//create the CookieProvider and create the state manager;
var cp=new Ext.state.CookieProvider();
Ext.state.Manager.setProvider(cp);

//save some values in the state
Ext.state.Manager.set('a', 1)
Ext.state.Manager.set('b', [1,2,3]);

//show what's inside
console.log(cp, cp.state);

//Here it comes. This is how to clear all states
for (var item in cp.state) {
    Ext.state.Manager.clear(item);
}
暗地喜欢 2025-01-14 08:04:54

文档说您需要传递令牌的名称才能清除。本质上,您只需要清除 cookie,您可以尝试清除该特定 cookie 或尝试您的域可访问的所有 cookie。
您可以使用 Ext.util.Cookies 或任何通用的 javascript cookie 处理例程。

请参阅如何使用 JavaScript 删除所有 Cookie?

The docs say you need to pass in a name of the token to clear. Essentially you just need to clear the cookies, you can try clearing that specific cookie or try all of them that are accessible to your domain.
You can either use Ext.util.Cookies or any of the generic javascript cookie handling routines out there.

see How can I delete all cookies with JavaScript?

唯憾梦倾城 2025-01-14 08:04:54

这是一个老问题,但是 - ExtJs 4 现在有一个clearAll() 方法。

Ext.state.Manager.clearAll();

This is an old question but - ExtJs 4 now has a clearAll() method.

Ext.state.Manager.clearAll();

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文