common.js 947 Bytes
import { NativeApi } from '@/api/NativeApis'

const AppInfo = {
    versionCode: 100,
    versionName: '2.1',
    statusBarHeight: 0,
    sourceFlag: false
}

export default {
    namespaced: true,
    state: {
        AppInfo: { ...AppInfo }
    },
    mutations: {
        MSetAppInfo (state, data) {
            Object.assign(state.AppInfo, data)
        }
    },
    actions: {
        AGetAppInfo ({ state, commit }) {
            if (state.AppInfo.sourceFlag) {
                return
            }
            NativeApi.nativeAppInfo({}).then(res => {
                if (res.data) {
                    Object.assign(res.data, { sourceFlag: true })
                }
                commit('MSetAppInfo', res.data)
            }).catch(e => {
                commit('MSetAppInfo', AppInfo)
            })
        }
    },
    getters: {
        GStatusBarHeight (state) {
            return state.AppInfo.statusBarHeight
        }
    }
}