2025-06-06 03:08:19 +08:00

91 lines
2.0 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import Vue from "vue";
export const state = {
//webView地址
webViewUrl: "",
loadingShow: false,
//微信场景参数
chatScenesInfo: {},
//登录弹窗状态
loginPopupShow: false,
//当前位置
currentAddress: {
areaName: "请选择",
areaId: ''
},
};
//缓存浏览器的数据名称
const cacheNameList = ["userInfo", "webViewUrl"];
let clearTime;
export const mutations = {
//取出缓存数据打开APP就取出
setCacheData(state) {
for (let name of cacheNameList) {
let data;
// #ifndef H5
data = uni.getStorageSync(name);
// #endif
// #ifdef H5
data = sessionStorage.getItem(name) || localStorage.getItem(name);
// #endif
if (data) {
// #ifdef H5
try {
data = JSON.parse(data);
} catch (e) {
}
// #endif
state[name] = data;
}
}
},
//WebView地址
setWebViewUrl(state, data) {
if (data) {
state.webViewUrl = data;
// #ifdef H5
window.sessionStorage.setItem('webViewUrl', data);
// #endif
}
},
//数据加载状态
setLoadingShow(state, data) {
if(state.loadingShow){
clearTime && clearTimeout(clearTime);
clearTime = setTimeout(function(){
state.loadingShow = data;
},300);
} else {
state.loadingShow = data;
}
},
//微信场景参数
setChatScenesInfo(state, data) {
if (data) {
state.chatScenesInfo = data;
}
},
//登录弹窗状态
setLoginPopupShow(state, data) {
state.loginPopupShow = data;
},
//当前地址
setCurrentAddress(state, data) {
if (data) {
state.currentAddress = Object.assign(state.currentAddress, data);
let addressInfo = {
"provinceId": state.currentAddress.provinceId,
"provinceName": state.currentAddress.provinceName,
"cityId": state.currentAddress.cityId,
"cityName": state.currentAddress.cityName,
"areaId": state.currentAddress.areaId,
"areaName": state.currentAddress.areaName,
};
uni.setStorageSync('currentAddress', addressInfo);
}
}
};
export const actions = {
};