update
This commit is contained in:
@@ -1,8 +1,8 @@
|
||||
import {defineStore} from "pinia";
|
||||
import {ref} from "vue";
|
||||
import {mockRoutes1, mockRoutes2} from './mock.js';
|
||||
import router from "../../router/index.js";
|
||||
import generateRouter from "../../router/generateRouter.js";
|
||||
import Api from "../../api/index.js";
|
||||
|
||||
export const useSystemStore = defineStore("SystemStore", () => {
|
||||
const isRoot = ref(false);
|
||||
@@ -26,8 +26,8 @@ export const useSystemStore = defineStore("SystemStore", () => {
|
||||
|
||||
RoutesTemp.value.length = 0;
|
||||
// 请求资源 mockRoutes
|
||||
const routes = generateRouter(isRoot.value ? mockRoutes2 : mockRoutes1);
|
||||
RoutesTemp.value.push(...(isRoot.value ? mockRoutes2 : mockRoutes1));
|
||||
const {data} = await Api.admin.getMenu();
|
||||
RoutesTemp.value.push(...data);
|
||||
await installRoute();
|
||||
}
|
||||
|
||||
|
||||
@@ -1,30 +1,48 @@
|
||||
import {defineStore} from "pinia";
|
||||
import {ref} from "vue";
|
||||
import {useSystemStore} from "../SystemStore/index.js";
|
||||
import router from "../../router/index.js";
|
||||
import Api from "../../api/index.js";
|
||||
import {toPath} from "../../utils/index.js";
|
||||
|
||||
export const useUserStore = defineStore("UserStore", () => {
|
||||
const isLogin = ref(false);
|
||||
const userInfo = ref(null);
|
||||
const token = ref(null);
|
||||
|
||||
const login = async (isRoot = false) => {
|
||||
const login = async (isRoot = false, form) => {
|
||||
// 请求
|
||||
const data = {};
|
||||
if (isRoot) { // 管理员
|
||||
if (form.code) {
|
||||
const {data: _data} = await Api.admin.phoneLogin(form);
|
||||
Object.assign(data, _data);
|
||||
} else {
|
||||
const {data: _data} = await Api.admin.login(form);
|
||||
Object.assign(data, _data);
|
||||
}
|
||||
} else { // 商户
|
||||
|
||||
}
|
||||
// 修改状态
|
||||
isLogin.value = true;
|
||||
// 获取并安装路由
|
||||
const { setRouter } = useSystemStore();
|
||||
token.value = data.token;
|
||||
userInfo.value = data;
|
||||
// // 获取并安装路由
|
||||
const {setRouter} = useSystemStore();
|
||||
await setRouter(isRoot);
|
||||
// 跳转
|
||||
await router.push('/home');
|
||||
// // 跳转
|
||||
toPath('/home');
|
||||
}
|
||||
|
||||
const logout = async () => {
|
||||
isLogin.value = false;
|
||||
const { clearRouter } = useSystemStore();
|
||||
const {clearRouter} = useSystemStore();
|
||||
await clearRouter();
|
||||
}
|
||||
return {
|
||||
isLogin,
|
||||
userInfo,
|
||||
token,
|
||||
login,
|
||||
logout,
|
||||
}
|
||||
@@ -32,6 +50,6 @@ export const useUserStore = defineStore("UserStore", () => {
|
||||
persist: {
|
||||
key: 'UserStore',
|
||||
storage: localStorage,
|
||||
pick: ['isLogin']
|
||||
pick: ['isLogin', 'token', 'userInfo']
|
||||
}
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user