import Vue from 'vue' import Vuex from 'vuex' import { isObject } from '@/utils/is' let qnToken = null, userInfo = null, supplierInfo = null, uecToken = null try { uecToken = uni.getStorageSync('uecToken') qnToken = uni.getStorageSync('qnToken') userInfo = uni.getStorageSync('userInfo') if (userInfo) { userInfo = JSON.parse(userInfo) } supplierInfo = uni.getStorageSync('supplierInfo') if (supplierInfo) { supplierInfo = JSON.parse(supplierInfo) } } catch (e) { console.error('初始化错误:', e) } Vue.use(Vuex) const store = new Vuex.Store({ state: { uecToken: uecToken || '', qnToken: qnToken || '', // token userInfo: userInfo || {}, // 用户信息 supplierInfo: supplierInfo || {}, // 纸盘商信息 nextPage: { name: '', data: {} } }, mutations: { setUecToken(state, token) { try { uni.setStorageSync('uecToken', token) state.uecToken = token } catch (e) { console.error('更改uecToken失败:', e) } }, removeUecToken(state) { try { uni.removeStorageSync('uecToken') state.uecToken = '' } catch (e) { console.error('删除uecToken失败:', e) } }, setToken(state, token) { try { uni.setStorageSync('qnToken', token) state.qnToken = token } catch (e) { console.error('更改token失败:', e) } }, removeToken(state) { try { uni.removeStorageSync('qnToken') state.qnToken = '' } catch (e) { console.error('删除token失败:', e) } }, setUserInfo(state, userInfo) { if (!isObject(userInfo)) { console.error('userInfo必须是对象') return } try { uni.setStorageSync('userInfo', JSON.stringify(userInfo)) state.userInfo = userInfo } catch (e) { console.error('更改userInfo失败:', e) } }, removeUserInfo(state) { try { uni.removeStorageSync('userInfo') state.userInfo = {} } catch (e) { console.error('删除userInfo失败:', e) } }, setSupplierInfo(state, supplierInfo) { if (!isObject(supplierInfo)) { console.error('supplierInfo必须是对象') return } try { uni.setStorageSync('supplierInfo', JSON.stringify(supplierInfo)) state.supplierInfo = supplierInfo } catch (e) { console.error('更改supplierInfo失败:', e) } }, removeSupplierInfo(state) { try { uni.removeStorageSync('supplierInfo') state.supplierInfo = {} } catch (e) { console.error('删除supplierInfo失败:', e) } }, setNextPage(state, nextPage) { if (!isObject(nextPage)) { console.error('nextPage必须是对象') return } state.nextPage.name = nextPage.name || '' state.nextPage.data = nextPage.data || {} }, removeNextPage(state) { state.nextPage.name = '' state.nextPage.data = {} } }, actions: { logout({ commit }) { commit('removeUecToken') commit('removeToken') commit('removeUserInfo') commit('removeSupplierInfo') } } }) export default store