@ditari/bsui 1.0.1 → 1.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/components/grid/Grid.cjs.js +1 -1
- package/dist/cjs/components/layout/Breadcrumb.vue.cjs.js +1 -1
- package/dist/cjs/components/layout/List.vue.cjs.js +1 -1
- package/dist/cjs/components/layout/Main.vue.cjs.js +1 -1
- package/dist/cjs/components/layout/Menu.cjs.js +1 -1
- package/dist/cjs/components/layout/NavTabs.vue.cjs.js +1 -1
- package/dist/cjs/components/layout/Show.vue.cjs.js +1 -1
- package/dist/cjs/hooks/route/index.cjs.js +1 -1
- package/dist/cjs/store/index.cjs.js +1 -0
- package/dist/cjs/store/index.d.ts +7 -7
- package/dist/cjs/store/modules/Breadcrumb.cjs.js +1 -1
- package/dist/cjs/store/modules/Breadcrumb.d.ts +1 -2
- package/dist/cjs/store/modules/DataDictionary.cjs.js +1 -1
- package/dist/cjs/store/modules/DataDictionary.d.ts +2 -2
- package/dist/cjs/store/modules/KeepAlive.cjs.js +1 -1
- package/dist/cjs/store/modules/KeepAlive.d.ts +1 -2
- package/dist/cjs/store/modules/Menu.cjs.js +1 -1
- package/dist/cjs/store/modules/Menu.d.ts +1 -2
- package/dist/cjs/store/modules/NavTab.cjs.js +1 -1
- package/dist/cjs/store/modules/NavTab.d.ts +3 -4
- package/dist/cjs/store/modules/Settings.cjs.js +1 -1
- package/dist/cjs/store/modules/Settings.d.ts +14 -95
- package/dist/cjs/store/modules/User.cjs.js +1 -1
- package/dist/cjs/store/modules/User.d.ts +14 -9
- package/dist/esm/components/grid/Grid.esm.js +1 -1
- package/dist/esm/components/layout/Breadcrumb.vue.esm.js +10 -16
- package/dist/esm/components/layout/List.vue.esm.js +21 -27
- package/dist/esm/components/layout/Main.vue.esm.js +2 -2
- package/dist/esm/components/layout/Menu.esm.js +19 -25
- package/dist/esm/components/layout/NavTabs.vue.esm.js +2 -2
- package/dist/esm/components/layout/Show.vue.esm.js +18 -23
- package/dist/esm/hooks/route/index.esm.js +26 -32
- package/dist/esm/store/index.d.ts +7 -7
- package/dist/esm/store/index.esm.js +16 -0
- package/dist/esm/store/modules/Breadcrumb.d.ts +1 -2
- package/dist/esm/store/modules/Breadcrumb.esm.js +2 -2
- package/dist/esm/store/modules/DataDictionary.d.ts +2 -2
- package/dist/esm/store/modules/DataDictionary.esm.js +5 -2
- package/dist/esm/store/modules/KeepAlive.d.ts +1 -2
- package/dist/esm/store/modules/KeepAlive.esm.js +11 -8
- package/dist/esm/store/modules/Menu.d.ts +1 -2
- package/dist/esm/store/modules/Menu.esm.js +4 -1
- package/dist/esm/store/modules/NavTab.d.ts +3 -4
- package/dist/esm/store/modules/NavTab.esm.js +4 -1
- package/dist/esm/store/modules/Settings.d.ts +14 -95
- package/dist/esm/store/modules/Settings.esm.js +7 -5
- package/dist/esm/store/modules/User.d.ts +14 -9
- package/dist/esm/store/modules/User.esm.js +15 -7
- package/dist/esm/style.css +1 -1
- package/package.json +6 -5
- package/src/components/layout/Breadcrumb.vue +1 -1
- package/src/components/layout/List.vue +1 -1
- package/src/components/layout/Menu.jsx +4 -2
- package/src/components/layout/NavTabs.vue +1 -1
- package/src/components/layout/Show.vue +4 -2
- package/src/hooks/route/index.ts +1 -1
- package/src/store/index.ts +7 -7
- package/src/store/modules/Breadcrumb.ts +1 -2
- package/src/store/modules/DataDictionary.ts +3 -1
- package/src/store/modules/KeepAlive.ts +1 -1
- package/src/store/modules/Menu.ts +1 -1
- package/src/store/modules/NavTab.ts +1 -1
- package/src/store/modules/Settings.ts +12 -4
- package/src/store/modules/User.ts +17 -10
|
@@ -1,16 +1,21 @@
|
|
|
1
|
-
|
|
2
|
-
token: undefined;
|
|
3
|
-
|
|
1
|
+
export interface State {
|
|
2
|
+
token: string | undefined;
|
|
3
|
+
userInfo: any;
|
|
4
|
+
}
|
|
5
|
+
export declare const useUserStore: import("pinia").StoreDefinition<string, State, {
|
|
4
6
|
getToken: (state: {
|
|
5
|
-
token: undefined;
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
token: string | undefined;
|
|
8
|
+
userInfo: any;
|
|
9
|
+
} & import("pinia").PiniaCustomStateProperties<State>) => string | undefined;
|
|
10
|
+
getUserInfo: (state: {
|
|
11
|
+
token: string | undefined;
|
|
12
|
+
userInfo: any;
|
|
13
|
+
} & import("pinia").PiniaCustomStateProperties<State>) => any;
|
|
9
14
|
}, {
|
|
10
15
|
/**
|
|
11
16
|
* 保存token
|
|
12
17
|
* @param token
|
|
13
18
|
*/
|
|
14
|
-
saveToken(token:
|
|
19
|
+
saveToken(token: string): void;
|
|
20
|
+
saveUserInfo(data: any): void;
|
|
15
21
|
}>;
|
|
16
|
-
export default _default;
|
|
@@ -1,12 +1,13 @@
|
|
|
1
|
-
import { defineStore as
|
|
2
|
-
import { USER_ID as
|
|
3
|
-
t
|
|
1
|
+
import { defineStore as o } from "pinia";
|
|
2
|
+
import { USER_ID as t } from "../types.esm.js";
|
|
3
|
+
const n = o(t, {
|
|
4
4
|
state: () => ({
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
token: void 0,
|
|
6
|
+
userInfo: void 0
|
|
7
7
|
}),
|
|
8
8
|
getters: {
|
|
9
|
-
getToken: (e) => e.token
|
|
9
|
+
getToken: (e) => e.token,
|
|
10
|
+
getUserInfo: (e) => e.userInfo
|
|
10
11
|
},
|
|
11
12
|
actions: {
|
|
12
13
|
/**
|
|
@@ -15,6 +16,13 @@ t(o, {
|
|
|
15
16
|
*/
|
|
16
17
|
saveToken(e) {
|
|
17
18
|
this.token = e;
|
|
19
|
+
},
|
|
20
|
+
saveUserInfo(e) {
|
|
21
|
+
this.userInfo = e;
|
|
18
22
|
}
|
|
19
|
-
}
|
|
23
|
+
},
|
|
24
|
+
persist: !0
|
|
20
25
|
});
|
|
26
|
+
export {
|
|
27
|
+
n as useUserStore
|
|
28
|
+
};
|
package/dist/esm/style.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.ditari-ant-back-top{right:4px;bottom:120px}.ditari-layout{height:100%}.ditari-layout .ditari-layout-sider{position:fixed;left:0;top:0;bottom:0;z-index:1}.ditari-layout .ditari-top-layout{position:fixed;left:200px;right:0;z-index:210}.ditari-layout .ditari-layout-content{margin-left:200px;margin-top:84px}.fade-enter-active,.fade-leave-active{transition:opacity .1s ease}.fade-enter-from,.fade-leave-to{opacity:0}.main-enter-active{transition:.2s}.main-leave-active{transition:.15s}.main-enter-from{opacity:0;margin-left:-20px}.main-leave-to{opacity:0;margin-left:20px}.ditari-layout-header{display:flex;justify-content:space-between;align-items:center;padding:0 15px;height:42px;border-bottom:1px solid #f0f2f5;background-color:#fff}.ditari-layout-header .ditari-layout-header-left{display:flex;justify-content:center}.ditari-layout-header .ditari-layout-header-left .ditari-side-collapsed{margin-right:20px;cursor:pointer;width:42px;line-height:30px;text-align:center;transition-duration:.2s}.ditari-layout-header .ditari-layout-header-left .ditari-side-collapsed:hover{background-color:#f0f2f5;border-radius:4px}.ditari-layout-header .ditari-layout-header-left .ditari-side-collapsed .icon{transition-duration:.2s}.ditari-user-menu{display:flex;align-items:center;height:100%}.ditari-user-menu .ditari-operation-items{margin-left:10px;height:100%}.ditari-user-menu .ditari-operation-items .ant-dropdown-link{display:flex;align-items:center;justify-content:center;height:100%}.collapsed-animation{transform:rotate(-180deg)}.
|
|
1
|
+
.ditari-list-layout{padding:20px;height:100%}.ditari-list-layout .wrapper{display:flex;flex-direction:column}.ditari-list-layout .ditari-list-table{flex:1}.ditari-list-layout .ditari-list-table .ant-card-body{display:flex;flex-direction:column;height:100%}.ditari-list-layout .ditari-list-form .ant-card-body{padding-bottom:0}.ditari-list-layout .wrapper{height:100%}.ditari-show-layout{position:relative}.ditari-show-layout .ant-card{margin-bottom:10px}.ditari-show-layout .ant-card .ant-card-head{padding:10px 24px}.ditari-show-layout .ant-card .ant-card-head .ant-card-head-title{padding:0}.ditari-show-layout .ant-card:last-child{margin-bottom:0}.ditari-show-layout .ditari-page-header{position:sticky;top:84px;z-index:1;padding:4px 24px;transition:all .3s}.ditari-show-layout .ditari-page-header.active{box-shadow:1px 5px 20px 2px #e0e0e0}.ditari-show-layout .ditari-show-footer{position:fixed;right:0;bottom:0;left:200px;padding:10px;background:#fff;box-shadow:0 0 5px 3px #e0e0e0}.ditari-ant-back-top{right:4px;bottom:120px}.ditari-layout{height:100%}.ditari-layout .ditari-layout-sider{position:fixed;left:0;top:0;bottom:0;z-index:1}.ditari-layout .ditari-top-layout{position:fixed;left:200px;right:0;z-index:210}.ditari-layout .ditari-layout-content{margin-left:200px;margin-top:84px}.fade-enter-active,.fade-leave-active{transition:opacity .1s ease}.fade-enter-from,.fade-leave-to{opacity:0}.main-enter-active{transition:.2s}.main-leave-active{transition:.15s}.main-enter-from{opacity:0;margin-left:-20px}.main-leave-to{opacity:0;margin-left:20px}.ditari-layout-header{display:flex;justify-content:space-between;align-items:center;padding:0 15px;height:42px;border-bottom:1px solid #f0f2f5;background-color:#fff}.ditari-layout-header .ditari-layout-header-left{display:flex;justify-content:center}.ditari-layout-header .ditari-layout-header-left .ditari-side-collapsed{margin-right:20px;cursor:pointer;width:42px;line-height:30px;text-align:center;transition-duration:.2s}.ditari-layout-header .ditari-layout-header-left .ditari-side-collapsed:hover{background-color:#f0f2f5;border-radius:4px}.ditari-layout-header .ditari-layout-header-left .ditari-side-collapsed .icon{transition-duration:.2s}.ditari-user-menu{display:flex;align-items:center;height:100%}.ditari-user-menu .ditari-operation-items{margin-left:10px;height:100%}.ditari-user-menu .ditari-operation-items .ant-dropdown-link{display:flex;align-items:center;justify-content:center;height:100%}.collapsed-animation{transform:rotate(-180deg)}.xi-pagination{margin-top:24px;text-align:center}.ditari-nav{background:#f0f2f5}.ditari-nav .ant-tabs-nav{margin:0}.ditari-nav .ant-tabs-content-holder{display:none}.ditari-nav .ant-tabs-tab{position:relative;margin-left:0!important;border:0!important;transition:none!important;border-radius:10px 10px 0 0!important}.ditari-nav .ant-tabs-tab:not(.ant-tabs-tab-active){background:transparent}.ditari-nav .ant-tabs-tab:hover:not(.ant-tabs-tab-active){background:#e9e9e9}.ditari-nav .ant-tabs-tab .ant-tabs-tab-btn{display:flex;align-items:center}.ditari-nav .ant-tabs-tab .anticon{margin-right:0;margin-left:20px}.ditari-nav .ant-tabs-tab .anticon:hover{font-weight:700}.ditari-nav .ant-tabs-nav-wrap{padding:4px 8px 0}.ditari-nav .ant-tabs-tab:before,.ditari-nav .ant-tabs-tab:after{position:absolute;bottom:0;content:"";width:20px;height:20px;border-radius:100%;box-shadow:0 0 0 40px transparent}.ditari-nav .ant-tabs-tab:before{left:-20px;clip-path:inset(50% -10px 0 50%)}.ditari-nav .ant-tabs-tab:after{right:-20px;clip-path:inset(50% 50% 0 -10px)}.ditari-nav .ant-tabs-tab:hover:before,.ditari-nav .ant-tabs-tab:hover:after{box-shadow:0 0 0 30px #e9e9e9}.ditari-nav .ant-tabs-tab.ant-tabs-tab-active:before,.ditari-nav .ant-tabs-tab.ant-tabs-tab-active:after{z-index:10;box-shadow:0 0 0 30px #fff}.ditari-nav .tab-item-dividers{position:absolute;z-index:0;height:14px;top:50%;left:0;right:0;margin-top:-7px}.ditari-nav .tab-item-dividers:before{content:"";display:block;position:absolute;top:0;left:1px;bottom:0;width:1px;opacity:1;background-color:red;transition:opacity .2s ease,background-color .3s;z-index:2}.ditari-breadcrumb .ant-breadcrumb-separator{display:none}.ditari-breadcrumb .breadcrumb{display:flex}.ditari-breadcrumb .breadcrumb .breadcrumb-item:first-child .breadcrumb-link{border-radius:6px 0 0 6px;clip-path:polygon(0 0,calc(100% - 8px) 0,100% 50%,calc(100% - 8px) 100%,0 100%)}.ditari-breadcrumb .breadcrumb .breadcrumb-item:last-child:not(:last-child) .breadcrumb-link{border-radius:0 6px 6px 0;clip-path:polygon(0 0,100% 0,100% 100%,0 100%,8px 50%)}.ditari-breadcrumb .breadcrumb-link{display:block;padding:4px 12px;background:#f0f2f5;clip-path:polygon(0 0,calc(100% - 8px) 0,100% 50%,calc(100% - 8px) 100%,0 100%,8px 50%)}.breadcrumb-enter-active{transition:all .25s}.breadcrumb-enter-from,.breadcrumb-leave-active{opacity:0;transform:translate(30px) skew(-50deg)}
|
package/package.json
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ditari/bsui",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.3",
|
|
4
4
|
"files": [
|
|
5
|
-
"dist
|
|
6
|
-
"src
|
|
5
|
+
"dist",
|
|
6
|
+
"src"
|
|
7
7
|
],
|
|
8
8
|
"private": false,
|
|
9
9
|
"publishConfig": {
|
|
10
10
|
"access": "public"
|
|
11
11
|
},
|
|
12
12
|
"exports": {
|
|
13
|
-
"
|
|
13
|
+
".": {
|
|
14
14
|
"require": "./dist/cjs/components/index.cjs.js",
|
|
15
15
|
"import": "./dist/esm/components/index.esm.js",
|
|
16
16
|
"types": "./dist/esm/components/index.d.ts"
|
|
@@ -25,6 +25,7 @@
|
|
|
25
25
|
"import": "./dist/esm/hooks/index.esm.js",
|
|
26
26
|
"types": "./dist/esm/hooks/index.d.ts"
|
|
27
27
|
},
|
|
28
|
-
"./css/*": "./dist/css/*"
|
|
28
|
+
"./css/*": "./dist/css/*",
|
|
29
|
+
"./theme/*": "./dist/style/*"
|
|
29
30
|
}
|
|
30
31
|
}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* @author 余老
|
|
5
5
|
*/
|
|
6
6
|
import { computed } from "vue";
|
|
7
|
-
import { useBreadcrumbStore } from "../../store";
|
|
7
|
+
import { useBreadcrumbStore } from "../../store/modules/Breadcrumb";
|
|
8
8
|
|
|
9
9
|
const store = useBreadcrumbStore();
|
|
10
10
|
const breadCrumbs = computed(() => store.getBreadcrumb);
|
|
@@ -10,7 +10,7 @@ import {
|
|
|
10
10
|
WatchStopHandle,
|
|
11
11
|
inject
|
|
12
12
|
} from "vue";
|
|
13
|
-
import { useSettingsStore } from "../../store/
|
|
13
|
+
import { useSettingsStore } from "../../store/modules/Settings";
|
|
14
14
|
import { storeToRefs } from "pinia";
|
|
15
15
|
import { useRoute } from "vue-router";
|
|
16
16
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { defineComponent, h, ref, resolveComponent } from "vue";
|
|
2
|
-
import { useMenuStore } from "../../store";
|
|
2
|
+
import { useMenuStore } from "../../store/modules/Menu";
|
|
3
3
|
|
|
4
4
|
export default defineComponent({
|
|
5
5
|
name: "DMenu",
|
|
@@ -63,7 +63,9 @@ export default defineComponent({
|
|
|
63
63
|
title: () => <>{menu.title}</>,
|
|
64
64
|
icon: () => (
|
|
65
65
|
<>
|
|
66
|
-
<span>
|
|
66
|
+
<span>
|
|
67
|
+
{menu.icon ? h(resolveComponent(menu.icon)) : undefined}
|
|
68
|
+
</span>
|
|
67
69
|
</>
|
|
68
70
|
),
|
|
69
71
|
default: () => {
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
import { computed, Ref, watch } from "vue";
|
|
6
6
|
import { useRoute, useRouter } from "vue-router";
|
|
7
7
|
import { CloseOutlined } from "@ant-design/icons-vue";
|
|
8
|
-
import { useNavTabsStore, useKeepAliveStore } from "../../store
|
|
8
|
+
import { useNavTabsStore, useKeepAliveStore } from "../../store";
|
|
9
9
|
import { INavTab } from "../../store/modules/NavTab";
|
|
10
10
|
import { storeToRefs } from "pinia";
|
|
11
11
|
|
|
@@ -2,11 +2,13 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* 详情/新增/编辑组件
|
|
4
4
|
*/
|
|
5
|
-
import { useSlots,
|
|
5
|
+
import { useSlots, watch } from "vue";
|
|
6
6
|
import { useRoute, useRouter } from "vue-router";
|
|
7
7
|
import { LeftOutlined } from "@ant-design/icons-vue";
|
|
8
8
|
import { useScrollLock, useWindowScroll } from "@vueuse/core";
|
|
9
|
-
import { useNavTabsStore
|
|
9
|
+
import { useNavTabsStore } from "../../store/modules/NavTab";
|
|
10
|
+
import { useSettingsStore } from "../../store/modules/Settings";
|
|
11
|
+
|
|
10
12
|
import { storeToRefs } from "pinia";
|
|
11
13
|
|
|
12
14
|
interface Props {
|
package/src/hooks/route/index.ts
CHANGED
package/src/store/index.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export {
|
|
2
|
-
export {
|
|
3
|
-
export {
|
|
4
|
-
export {
|
|
5
|
-
export {
|
|
6
|
-
export {
|
|
7
|
-
export {
|
|
1
|
+
export { useBreadcrumbStore } from "./modules/Breadcrumb";
|
|
2
|
+
export { useDataDicStore } from "./modules/DataDictionary";
|
|
3
|
+
export { useKeepAliveStore } from "./modules/KeepAlive";
|
|
4
|
+
export { useMenuStore } from "./modules/Menu";
|
|
5
|
+
export { useNavTabsStore } from "./modules/NavTab";
|
|
6
|
+
export { useSettingsStore } from "./modules/Settings";
|
|
7
|
+
export { useUserStore } from "./modules/User";
|
|
@@ -5,12 +5,11 @@
|
|
|
5
5
|
import { defineStore } from "pinia";
|
|
6
6
|
import { BREADCRUMB_ID } from "../types";
|
|
7
7
|
|
|
8
|
-
|
|
9
8
|
export interface State {
|
|
10
9
|
breadcrumbs: [];
|
|
11
10
|
}
|
|
12
11
|
|
|
13
|
-
export
|
|
12
|
+
export const useBreadcrumbStore = defineStore(BREADCRUMB_ID, {
|
|
14
13
|
state: (): State => ({
|
|
15
14
|
breadcrumbs: []
|
|
16
15
|
}),
|
|
@@ -5,7 +5,7 @@ interface State {
|
|
|
5
5
|
someState: string;
|
|
6
6
|
list: any;
|
|
7
7
|
}
|
|
8
|
-
|
|
8
|
+
const useDataDicStore = defineStore(DATA_DICTIONARY_ID, {
|
|
9
9
|
state: (): State => ({
|
|
10
10
|
someState: "你好 pinia",
|
|
11
11
|
list: {}
|
|
@@ -45,3 +45,5 @@ export default defineStore(DATA_DICTIONARY_ID, {
|
|
|
45
45
|
},
|
|
46
46
|
persist: true
|
|
47
47
|
});
|
|
48
|
+
|
|
49
|
+
export { useDataDicStore };
|
|
@@ -6,7 +6,7 @@ import { RouteLocationNormalized } from "vue-router";
|
|
|
6
6
|
|
|
7
7
|
import { KEEP_ALIVE_ID } from "../types";
|
|
8
8
|
|
|
9
|
-
export
|
|
9
|
+
export const useKeepAliveStore = defineStore(KEEP_ALIVE_ID, {
|
|
10
10
|
state: () => {
|
|
11
11
|
return {
|
|
12
12
|
list: [] as string[]
|
|
@@ -63,8 +63,16 @@ const gridConfig = [
|
|
|
63
63
|
}
|
|
64
64
|
];
|
|
65
65
|
|
|
66
|
-
export
|
|
67
|
-
|
|
66
|
+
export interface State {
|
|
67
|
+
refresh: boolean;
|
|
68
|
+
collapsed: boolean;
|
|
69
|
+
mediaRuleMap: any;
|
|
70
|
+
gridConfig: any;
|
|
71
|
+
gridValue: any;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
export const useSettingsStore = defineStore(SETTINGS_ID, {
|
|
75
|
+
state: (): State => ({
|
|
68
76
|
// 刷新状态
|
|
69
77
|
refresh: false as boolean,
|
|
70
78
|
// 菜单收缩
|
|
@@ -100,10 +108,10 @@ export default defineStore(SETTINGS_ID, {
|
|
|
100
108
|
*/
|
|
101
109
|
gridMatching() {
|
|
102
110
|
const mediaResult = this.mediaRuleMap.filter(
|
|
103
|
-
(item) => useMediaQuery(item.value).value
|
|
111
|
+
(item: any) => useMediaQuery(item.value).value
|
|
104
112
|
)[0];
|
|
105
113
|
const gridRs = this.gridConfig.filter(
|
|
106
|
-
(item) => item.key === mediaResult.key
|
|
114
|
+
(item: any) => item.key === mediaResult.key
|
|
107
115
|
)[0];
|
|
108
116
|
this.gridValue = gridRs;
|
|
109
117
|
}
|
|
@@ -1,23 +1,30 @@
|
|
|
1
1
|
import { defineStore } from "pinia";
|
|
2
2
|
import { USER_ID } from "../types";
|
|
3
3
|
|
|
4
|
-
export
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
4
|
+
export interface State {
|
|
5
|
+
token: string | undefined;
|
|
6
|
+
userInfo: any;
|
|
7
|
+
}
|
|
8
|
+
export const useUserStore = defineStore(USER_ID, {
|
|
9
|
+
state: (): State => ({
|
|
10
|
+
token: undefined,
|
|
11
|
+
userInfo: undefined
|
|
12
|
+
}),
|
|
11
13
|
getters: {
|
|
12
|
-
getToken: (state) => state.token
|
|
14
|
+
getToken: (state) => state.token,
|
|
15
|
+
getUserInfo: (state) => state.userInfo
|
|
13
16
|
},
|
|
14
17
|
actions: {
|
|
15
18
|
/**
|
|
16
19
|
* 保存token
|
|
17
20
|
* @param token
|
|
18
21
|
*/
|
|
19
|
-
saveToken(token:
|
|
22
|
+
saveToken(token: string) {
|
|
20
23
|
this.token = token;
|
|
24
|
+
},
|
|
25
|
+
saveUserInfo(data: any) {
|
|
26
|
+
this.userInfo = data;
|
|
21
27
|
}
|
|
22
|
-
}
|
|
28
|
+
},
|
|
29
|
+
persist: true
|
|
23
30
|
});
|