43 lines
1015 B
TypeScript
43 lines
1015 B
TypeScript
import { defineStore } from 'pinia';
|
||
import { ref } from 'vue';
|
||
|
||
export const items = defineStore({
|
||
id: 'items',
|
||
state() {
|
||
return {
|
||
list: [],
|
||
count: 10,
|
||
// 当前项目ID
|
||
projectId: 'HLlmTZp8',
|
||
// 站点ID
|
||
siteId: undefined,
|
||
// 全局loading状态
|
||
isLoading: ref(false),
|
||
};
|
||
},
|
||
getters: {
|
||
// double: (state: any) => state.count * 2,
|
||
},
|
||
actions: {
|
||
// 设置全局loading
|
||
setLoading(bool: boolean) {
|
||
if (bool == this.isLoading) {
|
||
return;
|
||
}
|
||
// loading在此框架的设定内,无法高于drawer(抽屉)
|
||
// 但操作逻辑又集中在drawer中,此处只能操作DOM
|
||
const dom: any = document.querySelector('.ant-spin-nested-loading');
|
||
if (bool) {
|
||
// 抽屉的高度为 999
|
||
dom.style.zIndex = '1111';
|
||
} else {
|
||
dom.style.zIndex = '';
|
||
}
|
||
this.isLoading = bool;
|
||
setTimeout(() => {
|
||
this.setLoading(false);
|
||
}, 5000);
|
||
},
|
||
},
|
||
});
|