|
@@ -0,0 +1,57 @@
|
|
|
+// src/store/index.js
|
|
|
+import { createStore } from 'vuex';
|
|
|
+import { House, Setting, Help } from '@element-plus/icons-vue';
|
|
|
+// import { login } from '../api/modules/home'
|
|
|
+import { Login } from "../../wailsjs/go/main/App"
|
|
|
+
|
|
|
+const iconComponents = {
|
|
|
+ house: House,
|
|
|
+ setting: Setting,
|
|
|
+ help: Help,
|
|
|
+};
|
|
|
+
|
|
|
+export default createStore({
|
|
|
+ state: {
|
|
|
+ isAuthenticated: false,
|
|
|
+ userInfo:{},
|
|
|
+ menuConfig: {
|
|
|
+ admin: [
|
|
|
+ { title: '首页', icon:iconComponents.house, path: '/' },
|
|
|
+ { title: '设置', icon:iconComponents.setting, path: '/setting' },
|
|
|
+ { title: '帮助', icon:iconComponents.help, path: '/help' },
|
|
|
+ // 更多管理员菜单项
|
|
|
+ ],
|
|
|
+ user: [
|
|
|
+ { title: '首页', icon:iconComponents.house, path: '/' },
|
|
|
+ { title: '帮助', icon:iconComponents.help, path: '/help' },
|
|
|
+ // 更多普通用户菜单项
|
|
|
+ ],
|
|
|
+ },
|
|
|
+ },
|
|
|
+ mutations: {
|
|
|
+ SET_AUTHENTICATED(state, payload) {
|
|
|
+ state.isAuthenticated = payload;
|
|
|
+ },
|
|
|
+ SET_USER_INFO(state, payload) {
|
|
|
+ state.userInfo = payload;
|
|
|
+ },
|
|
|
+ },
|
|
|
+ actions: {
|
|
|
+ async login({ commit }, credentials) {
|
|
|
+ // login(credentials)
|
|
|
+ const r = await Login(credentials.username, credentials.password)
|
|
|
+ console.log(r)
|
|
|
+
|
|
|
+ // console.log("登录信息:",credentials)
|
|
|
+ commit('SET_USER_INFO', credentials);
|
|
|
+ commit('SET_AUTHENTICATED', true);
|
|
|
+ },
|
|
|
+ logout({ commit }) {
|
|
|
+ commit('SET_AUTHENTICATED', false);
|
|
|
+ },
|
|
|
+ },
|
|
|
+ getters: {
|
|
|
+ // 定义一个 Getter 来获取当前登录用户的信息
|
|
|
+ getCurrentUser: (state) => state.userInfo,
|
|
|
+ }
|
|
|
+});
|