import store from '../../vuex/store' /** * 弹出框 */ export const Dialog = (str) => { store.dispatch('showAlert', true) store.dispatch('alertMsg', str) // setTimeout(() => { // store.dispatch('showAlert', false) // }, 30000) } /** * 提示框 */ export const toast = (str) => { store.dispatch('showToast', true) store.dispatch('toastMsg', str) setTimeout(() => { store.dispatch('showToast', false) }, 3000) } /** * 存储localStorage */ export const setStore = (name, content) => { if (!name) return if (typeof content !== 'string') { content = JSON.stringify(content) } window.localStorage.setItem(name, content) } /** * 获取localStorage */ export const getStore = name => { if (!name) return return window.localStorage.getItem(name) } /** * 小数加法 */ export const accAdd = (arg1, arg2) => { var r1, r2, m, c try { r1 = arg1.toString().split('.')[1].length } catch (e) { r1 = 0 } try { r2 = arg2.toString().split('.')[1].length } catch (e) { r2 = 0 } c = Math.abs(r1 - r2) m = Math.pow(10, Math.max(r1, r2)) if (c > 0) { var cm = Math.pow(10, c) if (r1 > r2) { arg1 = Number(arg1.toString().replace('.', '')) arg2 = Number(arg2.toString().replace('.', '')) * cm } else { arg1 = Number(arg1.toString().replace('.', '')) * cm arg2 = Number(arg2.toString().replace('.', '')) } } else { arg1 = Number(arg1.toString().replace('.', '')) arg2 = Number(arg2.toString().replace('.', '')) } return (arg1 + arg2) / m } /** * 小数减法 */ export const accSubtract = (arg1, arg2) => { var r1, r2, m, c try { r1 = arg1.toString().split('.')[1].length } catch (e) { r1 = 0 } try { r2 = arg2.toString().split('.')[1].length } catch (e) { r2 = 0 } c = Math.abs(r1 - r2) m = Math.pow(10, Math.max(r1, r2)) if (c > 0) { var cm = Math.pow(10, c) if (r1 > r2) { arg1 = Number(arg1.toString().replace('.', '')) arg2 = Number(arg2.toString().replace('.', '')) * cm } else { arg1 = Number(arg1.toString().replace('.', '')) * cm arg2 = Number(arg2.toString().replace('.', '')) } } else { arg1 = Number(arg1.toString().replace('.', '')) arg2 = Number(arg2.toString().replace('.', '')) } return (arg1 - arg2) / m } /** * 小数乘法 */ export const accMul = (arg1, arg2) => { var m = 0 var s1 = arg1.toString() var s2 = arg2.toString() try { m += s1.split('.')[1].length } catch (e) {} try { m += s2.split('.')[1].length } catch (e) {} return Number(s1.replace('.', '')) * Number(s2.replace('.', '')) / Math.pow(10, m) } /** * 求数组最大值 */ export const maxArr = (arr) => { let max = Number(arr[0]) let len = arr.length for (let i = 1; i < len; i++) { if (Number(arr[i]) > max) { max = Number(arr[i]) } } return max }