一个后台管理,登录成功以后,点击页面刷新,会回到登录页面,这个怎么解决?
该回答引用ChatGPT
可以使用 Vuex 进行状态管理来解决这个问题。Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。它可以让您在整个应用程序中共享和管理状态。
当登录成功时,将登录状态存储在 Vuex 中。当页面刷新时,可以从 Vuex 中读取登录状态,以判断用户是否已经登录。如果用户已经登录,则将其重定向到相应的页面;如果用户未登录,则将其重定向到登录页面。
这样,就可以解决页面刷新后回到登录页面的问题。
以下是一个简单的示例:
// store.js
import Vue from 'vue'
import Vuex from 'vuex'
Vue.use(Vuex)
export default new Vuex.Store({
state: {
isLoggedIn: false
},
mutations: {
setLoginStatus (state, status) {
state.isLoggedIn = status
}
}
})
// main.js
import Vue from 'vue'
import App from './App.vue'
import store from './store'
Vue.config.productionTip = false
new Vue({
store,
render: h => h(App)
}).$mount('#app')
// App.vue
<template>
<div id="app">
<router-view />
</div>
</template>
<script>
import { mapState } from 'vuex'
export default {
computed: {
...mapState({
isLoggedIn: state => state.isLoggedIn
})
},
beforeCreate () {
if (!this.isLoggedIn) {
this.$router.push('/login')
}
}
}
</script>
你好。这个是页面的重定向,也就是看你是采用ssm开发(后端转发)还是前端转发的页面。
使用重定向就不会刷新重新登陆了
您好,根据您的描述,关于一个后台管理,登录成功以后,点击页面刷新,会回到登录页面的现象,一般是由于你的系统没有做登录认证,也就是说您的系统没有记住您的登录状态信息,点击刷新后系统还认为您未登录。
望采纳。
可参考:https://blog.csdn.net/rojie0/article/details/124709369
你把 登录 信息 记下来 。然后 路由发生变化 做个 判断 从本地 拿登录信息 ,做个判断 ,登录过了 就 不重定向了,没有的花 再重定向
这样,就可以实现在登录成功之后,点击页面刷新,不会回到登录页面。
token 使用vuex 保存,或者使用localstorage 保存,
你用的后台是哪个后台