logwire-wms-ui-test
Version:
运匠科技wms-PDA基础组件库
99 lines (79 loc) • 2.3 kB
JavaScript
import Vue from "vue";
import lwNoticeBarVue from './index.vue'
import {AppPower} from "../../../utils/AppPower";
/*lwErrorMsg.install = Vue => Vue.component(lwErrorMsg.name, lwErrorMsg)
export default lwErrorMsg*/
// 手动挂载加载框
const noticeBar = Vue.extend(lwNoticeBarVue)
let noticeNew = null
// 挂载加载框
const lwNoticeBarDom = (obj) => {
noticeNew = new noticeBar({
el: document.createElement('div')
});
noticeNew.show = true
noticeNew.message = obj.message
noticeNew.background = obj.background
noticeNew.color = obj.color
noticeNew.showTime = obj.showTime
AppPower.shortVibrate(500)
document.body.appendChild(noticeNew.$el)
}
/**
* 打开错误提示弹框
* @param {Object|String} obj {
* message-提示信息,
* background-背景颜色,
* color-字体颜色,
* type-提示类型,
* showTime-显示时长(0不自动关闭),
* }
*/
const show = (obj) => {
const isObj = typeof obj === 'object'
let data = {}
isObj ? data = obj : data.message = obj
let background,color
switch (data.type) {
case "warning":
background = '#fffbe8'
color = '#ed6a0c'
break;
case "error":
background = '#fef0f0'
color = '#f56c6c'
break;
case "success":
background = '#f0f9eb'
color = '#67c23a'
break;
default:
background = 'rgb(236, 249, 255)'
color = 'rgb(25, 137, 250)'
}
data.background = data.background || background
data.color = data.color || color
noticeNew = window.lwWindowGlobalData.get('noticeBarDom')
if (noticeNew){
/*noticeNew.message = data.message
if (isObj){
noticeNew.background = data.background
noticeNew.color = data.color
noticeNew.type = data.type
noticeNew.showTime = data.showTime
}*/
noticeNew.showDom(data)
return
}
lwNoticeBarDom(data)
window.lwWindowGlobalData.set('noticeBarDom', noticeNew)
}
// 关闭错误提示弹框
const close = () => {
const dom = window.lwWindowGlobalData.get('noticeBarDom')
dom ? dom.close() : console.log('调用关闭顶部消息栏失败,没有可以关闭的消息', dom)
}
export const lwNoticeBar = {
show,
close
}