注销时清除nuxt存储和所有子模块



我想知道用户注销后重置所有商店的最佳解决方案是什么。 通常,我有一个登录的应用程序,有时在开发模式下,我需要从帐户切换(在实时模式下可能是这种情况(。显然,当我与其他用户登录时,我遇到了一些问题,一些商店信息仍然存在并且属于其他用户(如果我清楚的话,不知道(。 我已经在 auth.js 的注销功能中从我的商店中清除了一些模块。但是随着我的应用程序的增长,以及存储(在几个模块中解耦(,我只是想知道一次重置所有商店的最佳方法是什么,具有初始值/状态。

有什么想法吗?

这就是我从Nuxt的存储中清除一些数据的方式。

clearToken(state) {
state.token = null
state.refresh = null
state.currentUserData = null
},
logout(vuexContext, req) {
vuexContext.commit('clearToken')
Cookie.remove('jwt')
Cookie.remove('jwt_refresh')
Cookie.remove("tokenExpiration");
Cookie.remove("userData");
if (process.client) {
localStorage.removeItem('refresh');
localStorage.removeItem('token');
localStorage.removeItem("tokenExpiration");
localStorage.removeItem("userData");
if (!localStorage.getItem('token')) {
$nuxt.$router.push('/login/');
}
}
}

您可以使用以下方法清理所有 vuex 数据:localStorage.vuex = ''

最新更新