32 lines
842 B
TypeScript
32 lines
842 B
TypeScript
import { defineStore } from 'pinia';
|
|
export const useConfig = defineStore('configs', {
|
|
state: () : useConfigStates => ({
|
|
headers: { top: 0, right: 0, bottom: 0, left: 0, width: 0, height: 0 },
|
|
slogan: { top: 0, right: 0, bottom: 0, left: 0, width: 0, height: 0 },
|
|
SMS: {
|
|
SMS_TEXT: '获取验证码',
|
|
SMS_OUT: null
|
|
}
|
|
}),
|
|
actions: {
|
|
async clearConfig() {
|
|
uni.removeStorageSync('configs');
|
|
},
|
|
async setConfigs(payload : storePayload) {
|
|
let nameArr = payload.name.split('.');
|
|
let saveKey = '';
|
|
let len = nameArr.length;
|
|
if (len >= 2) {
|
|
let obj = this[nameArr[0]];
|
|
for (let i = 1; i < len - 1; i++) {
|
|
obj = obj[nameArr[i]];
|
|
}
|
|
obj[nameArr[len - 1]] = payload.value;
|
|
saveKey = nameArr[0];
|
|
} else {
|
|
this[payload.name] = payload.value;
|
|
saveKey = payload.name;
|
|
}
|
|
},
|
|
},
|
|
}); |