102 lines
2.3 KiB
JavaScript
102 lines
2.3 KiB
JavaScript
import Vue from 'vue'
|
|
import Vuex from 'vuex'
|
|
Vue.use(Vuex);
|
|
|
|
//Vuex.Store 构造器选项
|
|
const store = new Vuex.Store({
|
|
state: { //存放状态
|
|
"login": false,
|
|
"info": {
|
|
ft_sum: 0,
|
|
},
|
|
"BarHeight":{
|
|
statusBar:'',
|
|
customBar:'',
|
|
info:'',
|
|
custwidth:''
|
|
}
|
|
},
|
|
getters: {
|
|
is_login(state) {
|
|
return state.login;
|
|
},
|
|
is_BarHeight(state) {
|
|
//二次修改后的值 或者过滤的
|
|
return state.BarHeight;
|
|
},
|
|
get_info(state) {
|
|
//二次修改后的值 或者过滤的
|
|
return state.info;
|
|
},
|
|
},
|
|
mutations: {
|
|
// 登录
|
|
set_login(state, status) {
|
|
// 变更状态
|
|
state.login = status;
|
|
},
|
|
set_ft_sum(state, e) { //例子
|
|
state.info.ft_sum = e;
|
|
},
|
|
|
|
SET_STATUS_BAR(state, data) {
|
|
state.BarHeight.statusBar = data;
|
|
},
|
|
SET_CUSTOM_BAR(state, data) {
|
|
state.BarHeight.customBar = data;
|
|
},
|
|
SET_SYSTEM_INFO(state, data) {
|
|
state.BarHeight.info = data;
|
|
},
|
|
SUS_THIDTH(state, data){
|
|
state.BarHeight.custwidth = data;
|
|
}
|
|
},
|
|
actions: {
|
|
HeightActions({commit}) {
|
|
uni.getSystemInfo({
|
|
success: (e) => {
|
|
let statusBar = 0
|
|
let customBar = 0
|
|
let custwidth = 0
|
|
// #ifdef MP
|
|
statusBar = e.statusBarHeight
|
|
customBar = e.statusBarHeight + 45
|
|
if (e.platform === 'android') {
|
|
commit('SET_SYSTEM_IOSANDROID', false)
|
|
customBar = e.statusBarHeight + 50
|
|
}
|
|
// #endif
|
|
// #ifdef MP-WEIXIN
|
|
statusBar = e.statusBarHeight
|
|
// @ts-ignore
|
|
const custom = wx.getMenuButtonBoundingClientRect()
|
|
customBar = custom.bottom + custom.top - e.statusBarHeight
|
|
custwidth = custom.width + 7,
|
|
console.log(custom)
|
|
// #endif
|
|
// #ifdef MP-ALIPAY
|
|
statusBar = e.statusBarHeight
|
|
customBar = e.statusBarHeight + e.titleBarHeight
|
|
// #endif
|
|
// #ifdef APP-PLUS
|
|
console.log('app-plus', e)
|
|
statusBar = e.statusBarHeight
|
|
customBar = e.statusBarHeight + 45
|
|
// #endif
|
|
// #ifdef H5
|
|
statusBar = 0
|
|
customBar = e.statusBarHeight == 0
|
|
// #endif
|
|
// console.log(statusBar,customBar,custwidth,e)
|
|
commit('SET_STATUS_BAR', statusBar)//状态栏高度
|
|
commit('SET_CUSTOM_BAR', customBar)//顶部距离
|
|
commit('SUS_THIDTH',custwidth)//胶囊宽度
|
|
commit('SET_SYSTEM_INFO', e)
|
|
}
|
|
})
|
|
}
|
|
}
|
|
})
|
|
|
|
export default store |