完善登录页面vuex存入token

This commit is contained in:
GUjiYN 2024-04-08 11:22:33 +08:00
parent c548b8dee9
commit 44ce4f5943
2 changed files with 19 additions and 47 deletions

View File

@ -1,65 +1,37 @@
/*
import Vue from 'vue'
import Vuex from 'vuex'
import request from '@/js/request.js'
Vue.use(Vuex)
export default new Vuex.Store({
state: {
tokenInfo: {}
},
mutations: {
setTokenInfo (state, newToken) {
state.tokenInfo = newToken
}
},
actions: {
async userLogin (context, formState) {
// context.commit('mSetTokenInfo', res.data.data)
try {
const res = await request.login(formState)
console.log(res)
console.log(context)
// 请求成功之后,保存token,所以调mutations函数
context.commit('setTokenInfo', res.data.data)
} catch (err) {
// console.log(err)
throw new Error()
}
}
},
modules: {
}
})*/
import {createStore} from 'vuex'; import {createStore} from 'vuex';
import request from '@/js/request.js'; import request from '@/js/request.js';
import router from "@/router/index.js";
const store = createStore({ const store = createStore({
state: { state: {
tokenInfo: {} tokenInfo: null
}, },
mutations: { mutations: {
setTokenInfo(state, newToken) { setTokenInfo(state, newToken) {
state.tokenInfo = newToken; state.tokenInfo = newToken;
localStorage.setItem('token', newToken);
} }
}, },
actions: { actions: {
async userLogin(context, formState) { async userLogin({ commit }, formState) {
try { try {
const res = await request.login(formState); const res = await request.login(formState);
const token = res.data.data.token
console.log(res); console.log(res);
console.log(context); commit('setTokenInfo', token);
context.commit('setTokenInfo', res.data.data.token); if (res.data.data.role.rid===1) {
router.push("/Manager/Main")
}else {
router.push("/") //非管理员跳转index主页
}
} catch (err) { } catch (err) {
console.error(err); console.error(err);
throw new Error('登录失败'); throw new Error('登录失败');
} }
} }
}, },
modules: {
}
}); });
export default store; export default store;

View File

@ -62,6 +62,7 @@
import {reactive} from 'vue'; import {reactive} from 'vue';
import {message} from "ant-design-vue"; import {message} from "ant-design-vue";
import {useRouter} from "vue-router"; import {useRouter} from "vue-router";
import {useStore} from 'vuex'
const router = useRouter() const router = useRouter()
@ -103,17 +104,16 @@ function SendRegister(){
}); });
}*/ }*/
const store = useStore()
async function loginUser () { async function loginUser () {
// console.log(this.user) //console.log(this.user)
try { try {
await this.$store.dispatch('userLogin', formState) await store.dispatch('userLogin', formState)
message.success('登陆成功') message.success('登陆成功')
} catch (err) { } catch (err) {
// console.log('err:', err) console.log('err:', err)
message.warn('登陆失败l') message.warn('登陆失败')
} }
} }